python调用高德api路径规划_Python调用高德API爬取异地驾驶距离

本文介绍了一种使用Python爬虫获取两地之间驾驶距离的方法,包括获取地理位置坐标及计算两地间的驾驶距离。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

由于写论文需要数据,钻研许久终于搞懂。

注意是驾驶距离,不是直线距离。

爬虫分为两步:首先,爬取经纬度;其次,利用经纬度爬取距离。

假设我们要获得黑河到腾冲的驾驶距离,首先要获得两地坐标。

import requests

import json

def get_coord(county): # 设置函数,返回字典

result = {}

url = 'http://restapi.amap.com/v3/config/district' # 高德API

params = {'key':'填写自己申请的密钥', # 参数:高德密钥

'keywords': county,

'subdistrict': 0 } # 0:不返回下级行政区

try:

res = requests.get(url,params)

jd = json.loads(res.text)

result['county'] = county

result['coord'] = jd['districts'][0]['center']

return result

except:

result['county'] = county

result['coord'] = '未获取经纬度'

return result

coord = get_coord('黑河市')

coord

得到黑河市和腾冲市坐标如下图所示:

进而根据所得的坐标,计算两地驾驶距离。

import requests

import json

url = 'http://restapi.amap.com/v3/distance' # 一个新的API

params = {'key': '填写自己申请的密钥',

'origins': '127.499023,50.249585', # 黑河市坐标

'destination': '98.497292,25.01757', # 腾冲市坐标

'type': 1 }

res = requests.get(url, params)

jd = json.loads(res.text)

distance = jd['results'][0]['distance']

distance

得到黑河到腾冲驾驶距离如下:

再把爬虫结果和高德地图对比:

请看方案一,over.

知乎第一次发文。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值