python已知经纬度信息获取详细地址信息 | 您所在的位置:网站首页 › python获取地址信息 › python已知经纬度信息获取详细地址信息 |
本文通过调用高德地图API KEY,使用高德地图的逆地理编码(坐标转地址)功能实现已知经纬度信息获取详细地址信息 申请高德地图API KEY(1)进入高德地图API官网高德地图 (2)在控制台找到应用管理-我的应用,点击右上角创建新应用,按照要求输入你要新建的应用名称和应用类型,点击新建,我的应用页面就会出现你新建的应用了 逆地理编码的过程跟地理编码没有什么大差别,可以参考官方使用说明文档 申请完key后参考接口参数文档发起HTTP/HTTPS请求,申请的key需作为必填参数一同发送; API接口,GET请求方式: https://restapi.amap.com/v3/geocode/regeo?parameters接收请求返回的数据(JSON或XML格式),参考返回参数文档解析数据; 我们所要的坐标即在其中的location函数中,可直接解析json数据获取: # 地理编码 def getGeoCode(self, address): url = f'https://restapi.amap.com/v3/geocode/geo?parameters&key={self.key}&address={address}' json_data = self.requestApi(url) if json_data['status'] == '1': location = json_data['geocodes'][0]['location'] return location else: return '获取失败' 完整代码 import requests class GaodeGeo: def __init__(self): self.key = 'YOU API KEY' def requestApi(self, url): re = requests.get(url).json() return re # 地理编码 def getGeoCode(self, address): url = f'https://restapi.amap.com/v3/geocode/geo?parameters&key={self.key}&address={address}' json_data = self.requestApi(url) if json_data['status'] == '1': location = json_data['geocodes'][0]['location'] return location else: return '获取失败' # 根据经纬坐标获取地址等信息 def getInverseGeoCode(self, location): url = f'https://restapi.amap.com/v3/geocode/regeo?parameters&key={self.key}&location={location}' json_data = self.requestApi(url) if json_data['status'] == '1': # 获取格式化的详细地址 formatted_address = json_data['regeocode']['formatted_address'] return formatted_address else: return '获取失败' ## 使用说明 gd = GaodeGeo() # 通过坐标获取所在区县 area = gd.getInverseGeoCode('113.277732,22.989125') # 示例经纬度 print('area:',area)输出结果: |
CopyRight 2018-2019 实验室设备网 版权所有 |