网络编程
位置:首页>> 网络编程>> Python编程>> python实现ip地址查询经纬度定位详解

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

作者:linyouyi  发布时间:2021-09-13 08:01:52 

标签:python,ip,地址,经纬度,定位

 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 urllib
import urllib2
import json
import sys
reload(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()

来源:https://www.cnblogs.com/linyouyi/p/10739850.html

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com