自己收藏的高德地图批量标点获取坐标工具

本文提供了一个基于HTML和高德地图API的地图经纬度描点工具代码,支持手动取点和地址搜索,能够显示和记录所选取点的经纬度信息。

直接上代码!!!

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>地图经纬度描点工具</title>
<!--
<script type="text/javascript" src="http://api.map.baidu.com/api?v=1.2">deng</script>
-->
<script type="text/javascript" src="http://webapi.amap.com/maps?v=1.3&key=9dff644dd853bd6eeebc598847b5683c&plugin=AMap.Autocomplete"></script>

</head>
<body>
<div style="width:80%;height:650px;border:1px solid gray" id="container"></div>

<div style="right:10px;top:8px;position: absolute;width:18%; height: 650px;border:1px solid gray">
    <p>
        &nbsp;手动:<input id="startBtn" type="button" onclick="startTool();" value="开启取点工具" />
    </p>

    <p>
        &nbsp;搜索:<input type="input" name="addr"  id="addr" />
        <input type="button" onclick="getBoundary()" value="搜索" />
    </p>
    

    <hr>
    <p style="padding: 0 5px;">
        <span>经纬度:</span><input type="button" onclick="map.clearMap();document.getElementById('info').innerHTML = '';points=[];" value="清除" />
        <textarea id="info" style="width:94%;margin:2px;max-height: 980px;min-height: 440px;overflow-y:scroll;" readonly="readonly"></textarea>
    </p>
</div>

</body>
</html>

### 高德地图API批量获取村落坐标的解决方案 为了实现通过高德地图API批量获取村落坐标的功能,可以采用以下方式: #### 1. 使用高德地理编码API 高德地图提供了地理编码API,能够将结构化的地址转化为对应的经纬度坐标。该API支持批量请求,可以通过HTTP/HTTPS协议调用接口来完成地址到坐标的转换[^1]。 以下是基于Python语言的一个简单代码示例,展示如何使用高德地图API批量获取村落的坐标: ```python import requests import pandas as pd def get_coordinates(addresses, api_key): base_url = "https://restapi.amap.com/v3/geocode/geo" result_list = [] for address in addresses: params = { 'address': address, 'key': api_key, 'batch': True # 批量查询参数设置 } response = requests.get(base_url, params=params).json() if response['status'] == '1' and int(response['count']) > 0: location = response['geocodes'][0]['location'] longitude, latitude = location.split(',') result_list.append({ 'address': address, 'longitude': longitude, 'latitude': latitude }) else: result_list.append({ 'address': address, 'longitude': None, 'latitude': None }) return result_list # 示例:读取Excel文件中的地址列表并生成坐标 df_addresses = pd.read_excel('villages.xlsx') # 假设有一个包含村落地址的Excel文件 addresses = df_addresses['address'].tolist() # 获取地址列的数据 api_key = 'your_amap_api_key_here' coordinates_data = get_coordinates(addresses, api_key) # 将结果保存回Excel文件 result_df = pd.DataFrame(coordinates_data) result_df.to_excel('villages_with_coordinates.xlsx', index=False) ``` 此代码实现了从一个包含村落地址的Excel文件中提取地址,并将其发送至高德地图API进行处理,最终返回带有对应坐标的表格数据[^2]。 #### 2. 处理大量数据时需要注意事项 当面对数万个地址记录时,需注意API调用频率限制和性能优化问题。高德地图API对于免费用户有一定的每日调用量上限,因此可能需要考虑分批执行任务或将程序设计为定时运行模式以满足需求[^3]。 另外还可以借助数据库技术创建临时表用于存储中间计算成果,从而减少重复劳动提高效率。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值