欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程语言 > python >内容正文

python

python地图 两点距离_使用Python调用百度地图Api获取两地距离

发布时间:2025/3/20 python 34 豆豆
生活随笔 收集整理的这篇文章主要介绍了 python地图 两点距离_使用Python调用百度地图Api获取两地距离 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

完整代码可以关注公众号:Romi的杂货铺

1.获取百度api接口

首先需要在百度的公众平台http://lbsyun.baidu.com/上点击控制台,如果是新用户的话需要进行注册和验证。注册和验证完毕后可以点击创建应用,填写应用名称等相关信息,应用类型根据需要进行设置,有浏览器端和服务器端两种。在这里特别说明的是,在IP白名单框里最好设置为:0.0.0.0/0,因为有时候把自己己的IP地址输进去可能也不行。

创建应用完成后我们就可以得到刚刚创建的应用的密钥(AK)

def getapiurl(myaddress):

url=r"http://api.map.baidu.com/geocoding/v3/?address={}&output=json&ak={}".format(myaddress,myAK)#说明文档里给出的api接口

print(url)

return url

def getPosition(url):

'''返回经纬度信息'''

res = requests.get(url)

json_data = json.loads(res.text)

if json_data['status'] == 0:

lat = json_data['result']['location']['lat'] # 纬度

lng = json_data['result']['location']['lng'] # 经度

else:

print("Error output!")

return json_data['status']

return lat, lng

3.获取起始地点的步行距离

def getdistance(startlat,startlng,endlat,endlng):

#{: .6f}保留小数点后六位

distanceurl=r"http://api.map.baidu.com/directionlite/v1/walking?origin={:.6f},{:.6f}&destination={:.6f},{:.6f}&ak={}".format(startlat,startlng,endlat,endlng,myAK)

res = requests.get(distanceurl)

dis_json_data = json.loads(res.text)

if dis_json_data['status'] == 0:

distance=dis_json_data['result']['routes'][0]['distance']

print(distance)

这里通过api获取的json文件中的结构与说明文档中的结构有一些出入,所以还是要按照实际的情况灵活修改

总结

以上是生活随笔为你收集整理的python地图 两点距离_使用Python调用百度地图Api获取两地距离的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。