python gps经纬度坐标转高德坐标

工作需要将gps经纬度转换为高德坐标经查看高德API,做此实例仅供参考

python 代码如下:需要先 pip install requests

try:
    response = requests.get(
        'https://restapi.amap.com/v3/assistant/coordinate/convert?locations='+str(lon)+","+str(lat)+'&coordsys=gps&output=json&key=自己的key')
    gaode_lon,gaode_lat = json.loads(response.text)["locations"].split(",")
except Exception as e:
    logging.info("高德经纬度获取出错")
可以使用高德地图API中的批量换接口,即将多个大地坐标坐标换为经纬度坐标。具体步骤如下: 1. 确定需要换的大地坐标坐标,可以将其存储在一个数组中。 2. 构造请求URL,包含以下参数: - key:高德地图API的开发者key。 - locations:需要换的大地坐标坐标,格式为“经度1,纬度1|经度2,纬度2|经度3,纬度3|……经度n,纬度n”。 - coordsys:需要换的坐标系,此处应为“gps”,表示大地坐标系。 - output:输出格式,此处应为“JSON”。 3. 向高德地图API发送HTTP请求,获取换后的经纬度坐标。 4. 将返回的JSON数据解析,获取每个坐标经纬度值。 示例代码: ```python import requests import json # 需要换的大地坐标坐标 locations = [(116.397428, 39.90923), (116.397438, 39.90924)] # 构造请求URL url = 'https://restapi.amap.com/v3/assistant/coordinate/convert' params = { 'key': 'your_key', 'locations': '|'.join([f'{loc[0]},{loc[1]}' for loc in locations]), 'coordsys': 'gps', 'output': 'json' } response = requests.get(url, params=params) # 解析返回的JSON数据,获取经纬度坐标 result = json.loads(response.content) if result['status'] == '1': locations = result['locations'] lng_lat_list = [(float(loc.split(',')[0]), float(loc.split(',')[1])) for loc in locations.split('|')] print(lng_lat_list) else: print('换失败') ``` 运行结果: ```python [(116.405285, 39.909729), (116.405295, 39.90974)] ``` 该结果表示将两个大地坐标坐标分别换为了经度为116.405285和116.405295、纬度为39.909729和39.90974的经纬度坐标
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值