import requests
key = 'your_api_key' # 在高德开放平台上申请得到的API key
url = f'https://restapi.amap.com/v3/config/district?keywords=全国&subdistrict=0&key={key}'
response = requests.get(url).json() # 获取全国区域信息
nation_code = response['districts'][0]['adcode']
url = f'https://restapi.amap.com/v3/traffic/status/road?level=6&adcode={nation_code}&key={key}'
response = requests.get(url).json() # 获取全国城市主干道路状况
roads = response['trafficinfo']['roads']
for road in roads:
polyline = road['polyline']
name = road['name']
try:
path = [(float(polyline[i]), float(polyline[1 + i])) for i in range(0, len(polyline), 2)] # 将道路坐标转化为经纬度
except ValueError:
continue
# 处理path数据,可以存储到数据库或者文件中
以上代码中,首先通过高德地图API获取全国行政区域编码(adcode),然后再根据adcode获取全国城市主干道路信息,最后将每条道路经纬度坐标进行解析,存储到数据库或文件中。
注意,实际应用中需要考虑API使用次数和频率的限制。