首页 > 编程 > Python > 正文

python实现ip地址查询经纬度定位详解

2019-11-25 11:48:30
字体:
来源:转载
供稿:网友

 1、此api已经关闭

https://api.map.baidu.com/highacciploc/v1?qcip=220.181.38.113&ak=你申请的AK&extensions=1&coord=bd09ll

2、现在改成

API首页:http://lbsyun.baidu.com/index.php?title=webapi/ip-api

使用方式:https://api.map.baidu.com/location/ip?ak=请输入您的AK&coor=bd09ll

# -*- coding: utf-8 -*-import urllibimport urllib2import jsonimport sysreload(sys)sys.setdefaultencoding('utf-8')class SendUrl(object):  def send_url(self, url, headers, data=None):    opener = urllib2.build_opener()    request = urllib2.Request(url, data=data, headers=headers)    response = opener.open(request, timeout=10)    js = json.loads(response.read().decode("utf-8"))    print(type(js))    #print(dir(js))    #print(js)    print("================================================")    print('位置:'+ js['content']['address_detail']['province'] + js['content']['address_detail']['city'])    print('纬度:'+ js['content']['point']['y'])    print('经度:'+ js['content']['point']['x'])    print('节点:'+ js['address'])    print("================================================")def Main():  # ak 需自行注册  ak = "xxxxxxxxxxxxxxxxxxxxxxxxx"  sx = SendUrl()  url = "https://api.map.baidu.com/location/ip"  data = {"ip": "36.101.234.14", "ak": ak, "coor": "bd09ll"}  headers = {    'User-Agent': "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36"}  sx.send_url(url, headers, data=urllib.urlencode(data))if __name__ == '__main__':  Main()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持武林网。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表