pygeocoder 返回错误的地理编码

Posted

技术标签:

【中文标题】pygeocoder 返回错误的地理编码【英文标题】:pygeocoder returning wrong geocode 【发布时间】:2015-03-16 09:20:03 【问题描述】:

很多时候它会在大约 1.0 英里范围内返回结果,但并不准确。

from pygeocoder import Geocoder
addr = "Hometown BI-LO, 1016 Pine Log Road, Aiken, SC 29803, United States"
Geocoder.geocode(addr)[0].coordinates

返回 (33.516093, -81.73750240000001)

当我在谷歌地图网站上搜索时,它显示 1 英里远。

我的客户给了我地址,我将它们转换成地理编码。

我也尝试过使用 geocode api。

[https://maps.googleapis.com/maps/api/geocode/json?address=BI-LO+HOMETOWN,+1016+PINE+LOG+ROAD,+AIKEN,+SC+29803][1]

我的客户给了我地址,我将它们转换成地理编码。

有没有办法在谷歌地图网站上搜索并使用脚本总是返回相同的结果?

【问题讨论】:

【参考方案1】:

你可以试试这个库:

http://geocoder.readthedocs.org/en/latest/providers/Google/

这是一个活跃的开源项目。如果你没有得到你想要的结果和开源最好的部分,你可以寻求帮助:你可以分叉并创建一个拉取请求。

【讨论】:

它返回 5.0 英里外。 g = geocoder.mapquest('Hometown BI-LO, Hometown BI-LO, 1016 Pine Log Road, Aiken, SC 29803, United States')g.lat, g.lng 您是否尝试过使用 google 提供商?因为您的命令是针对 mapquest 的。如果你想要和谷歌地图一样的结果,你应该使用谷歌提供者 是的,即使谷歌提供商没有得到正确的输出。 g = geocoder.google('Hometown BI-LO, Hometown BI-LO, 1016 Pine Log Road, Aiken, SC 29803, United States') g.latlng [33.516093, -81.73750240000001] 预期 [33.523116, -81.724922] @SBiilion 好的。我不明白您的问题出在 google map api 上。 ***.com/questions/10567487/…

以上是关于pygeocoder 返回错误的地理编码的主要内容,如果未能解决你的问题,请参考以下文章

Javascript 中的反向地理编码返回 MissingKeyMap 错误

地理编码在应用于数据框时返回错误的城镇 - 在应用于文本时返回正确的城镇

谷歌地理编码服务返回虚假地址的响应

OSMNX 地理编码器返回不正确的坐标

使用纬度和经度时收到 403 禁止错误:地理编码

Google 地理编码 API 为邮政编码返回 ZERO_RESULTS