百度地图IP定位API接口变更及Python调用示例

小满
小满
发布时间:2026-10-13 | 2人浏览过
原创

本文介绍了百度地图IP定位API接口的更新情况,指出旧版高精度接口已关闭,并提供了新版API的使用地址与调用方式。同时附带了基于Python的完整代码示例,演示如何通过urllib库发送请求、解析JSON数据并提取IP对应的省份、城市、经纬度等详细信息,供开发者参考集成。

百度地图IP定位API接口变更说明

首先需要说明的是,此前使用的某特定高精度IP定位API接口目前已经停止服务。

原接口地址格式曾类似于:https://api.map.baidu.com/highacciploc/v1?qcip=220.181.38.113&ak=你申请的AK&extensions=1&coord=bd09ll。

目前官方已调整策略,建议改用新的API接口进行调用。

新的API文档首页位于:http://lbsyun.baidu.com/index.php?title=webapi/ip-api。

具体的调用方式示例为:https://api.map.baidu.com/location/ip?ak=请输入您的AK&coor=bd09ll。

Python调用IP定位API代码示例


# -*- 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()

以上即为关于百度地图IP定位接口变更及Python实现代码的完整介绍,希望能为各位的学习和工作提供便利,也欢迎大家继续支持本站获取更多技术资源。

相关标签:

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表