[python&高德]调用wbe服务api获取省、市、区经纬度信息
简介:
基于高德开放的api接口中行政区域查询接口实现,快速的查找特定的行政区域信息,查询后直接导致csv数据到本地。该接口官方介绍链接:https://lbs.amap.com/api/webservice/guide/api/district
一、获取高德web申请key方法移步这里:
https://lbs.amap.com/api/webservice/guide/create-project/get-ke
二、完整代码,输入key即可运行:
import requests
import pandas as pd
import time
# 行政区域查询 https://lbs.amap.com/api/webservice/guide/api/district
# 高德web key
key = 'xxxx' # 高德地图API
# 只支持单个关键词语搜索关键词支持,行政区名称、citycode、adcode
while True: # 创建循环,如果查询结果成功,跳出循环
keywords = input('请输入需查询的关键词,例如,搜索国家(中国),搜索省份(例如山东),能够显示市(例如济南),区(例如历下区):\n')
# 设置显示下级行政区级数,可选值:0、1、2、3
subdistrict = input('设置显示下级行政区级数,输入数字:0、1、2、3:\n')
# 此项控制行政区信息中返回行政区边界坐标点;base:不返回行政区边界坐标点;all:只返回当前查询district的边界值,不返回子节点的边界值;
extensions = 'base'
url = f'http://restapi.amap.com/v3/config/district?key={
key}&keywords={
keywords}&subdistrict={
subdistrict}&extensions={
extensions}'
r = requests.get(url)
data = r.json()
# print(data)
建议结果列表 = data['count']
# print(建议结果列表)
if 建议结果列表 == '0':
print('参数输入错误,请重新输入!返回值:', 建议结果列表)
else:
break
行政区数据列表 = [] # 创建空列表,用户存储查询的数据
s1 = data['districts'][0]['adcode'] # 区域编码
s2 = data['districts'][0]['name'] # 行政区名称
s3 = data['districts'][0]['center'] # 区域中心点
s4 = data['districts'][0]['level'] # 行政区划级别
s5 = data['districts'][0]['citycode'] # 城市