ggmap中非唯一街道地理编码:获取所有匹配街道经纬度方法咨询
解决同名街道地理编码获取所有匹配经纬度的思路
- 补充上下文缩小查询范围:如果数据集里有城市、区县、邮政编码这类信息,直接把它们和街道名拼接成完整查询字符串(比如
XX市XX区XX街道),大部分地理编码API会优先返回对应区域内的结果,同时开启「返回多结果」参数(很多API默认只给最优匹配,得手动设置,比如把max_results参数设为10以上)。 - 遍历候选区域批量查询:要是没有附属区域信息,先整理目标地区的行政区域列表(比如全国区县列表),循环给每个区域加上街道名发起查询,把返回的经纬度结果去重后留存。注意控制API请求频率,别触发限流。
- 强制API返回所有匹配项:主流地理编码服务都支持返回多个匹配结果,调用时明确要求返回所有可能的结果,而非仅置信度最高的那条。拿到结果后直接提取每条记录的
lng和lat字段即可。 - 结合POI数据交叉验证:担心API漏结果的话,可以同时调用POI检索接口,以街道名为关键词获取关联POI点的经纬度,再和地理编码结果合并去重,确保覆盖所有同名街道。
内容的提问来源于stack exchange,提问作者lupo404
相关产品推荐
相关产品推荐

