4

我希望能够在本地运行查询,比较位置的纬度和经度,这样我就可以根据距离对我捕获的某些地址运行查询。

我找到了一个免费的数据库,其中包含有关邮政编码的信息,但我想要此信息以获取更具体的地址。我查看了谷歌的地理定位服务,似乎违反 TOS 将这些值存储在我的数据库中或将它们用于除了使用谷歌地图做事之外的任何事情。(如果有人对此进行了更深入的研究并且我不正确,请告诉我)

我是否可能找到任何(免费或付费)服务让我在本地存储这些纬度/经度值?我需要的地址数量目前非常少,但如果我的网站变得流行,它可能会随着时间的推移而扩大到大量。不过,我只需要获取输入的每个地址的坐标。

4

3 回答 3

1

这个问题没有引起足够的重视...

你是对的——它不能用谷歌的服务来完成,而且仍然符合 TOS。为您诚实地寻求遵守 TOS 干杯。

我在一家名为SmartyStreets的公司工作,我们在那里处理地址并验证地址——并对它们进行地理编码。Google 的条款不允许您存储从 API 返回的数据,并且在限制或切断您的访问之前有非常严格的使用限制。

屏幕抓取带来了许多技术和道德方面的挑战和问题,我想我不会在这里讨论它们。Giorgio 链接到的 Microsoft 库仅适用于 .NET。

如果您仍然认真对待这样做,我们有一项名为LiveAddress的服务,可从任何平台或语言访问。它是一个 RESTful API,例如可以使用 GET 或 POST 调用,输出是 JSON,几乎可以在所有常见语言/平台中解析。

只要您不重新制造我们的产品或建立您自己的数据库以试图复制我们的产品(或类似的东西),我们的条款允许您存储您收集的数据。不过,对于您所描述的,这应该不是问题。

如果您对地址地理编码还有其他问题,请告诉我;我很乐意提供帮助。

顺便说一句,我们的 GitHub 存储库中有一些示例代码:https ://github.com/smartystreets/LiveAddressSamples

于 2012-04-19T22:18:05.597 回答
0

http://www.zip-info.com/cgi-local/zipsrch.exe?ll=ll&zip=13206&Go=Go 可以使用屏幕刮板,如果您只需要获取它们一次。

于 2011-11-15T02:21:08.313 回答
0

微软也提供这项服务。检查这是否可以帮助您http://msdn.microsoft.com/en-us/library/cc966913.aspx

于 2011-11-15T02:24:52.430 回答