python requests调用高德接口获取距离时间

     在涉及路径计算等相关问题的时候经常需要知道两个点之间的距离和时间,这个时候可以通过调用高德的路径规划接口来获取相关数据,具体可参考如下。相关key可自行到高德开放平台申请:https://lbs.amap.com/ ,以下以驾车距离时间为例,不同出行方案有不同的接口,比如:货车、步行、骑行等等,具体可参考上述主页。

代码如下:

#高德地图驾车路径规划,获取两地点之间的驾车里程和时间
import pandas as pd
import requests
import json

def get_dis_tm(origin, destination):
    url = 'https://restapi.amap.com/v3/direction/driving?'
    key = 'XXXXXXXXXXXXXXX' #这里就是需要
    link = '{}origin={}&destination={}&key={}'.format(url, origin ,destination , key)
    response = requests.get(link)
    dis, tm = 999999, 999999
    if response.status_code == 200:
        results = response.json()
        if results['status'] == '1':
            dis = int(results['route']['paths'][0]['distance'])
            tm = int(results['route']['paths'][0]['duration'])
        else:
            print(link)
    return dis, tm

测试:北京到上海的驾车距离时间

#北京和上海的经纬度
beijing = '114.049085,22.556316'
shanghai = '121.473658,31.230378'
get_dis_tm(beijing,shanghai)
输出结果为:(1434242, 63256)

涉及到批量调用的可以写个循环,但是每天都调用次数限制,学习愉快~

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值