3

我们正在用 django 框架和 python 开发我们的网站。目前我们正在寻找一个 api/a 工具来验证用户输入的物理地址。它不需要非常复杂。我们只需要避免垃圾邮件注册。对于这一步,我们需要验证国家、州、城市和邮政编码是否属于彼此。例如,伯克利作为邮政编码 94704 的城市不在纽约州等。有什么想法吗?

4

2 回答 2

4

您可以尝试pygeocoder。它是 Google 地理编码 V3 API 的 Python 包装器。它可以满足您的一些验证需求。

from pygeocoder import Geocoder
g = Geocoder()
g.geocode("1 wellington, ottawa").valid_address
>>> True
g.geocode("1 wellington, chicago").valid_address
>>> False

它也可能需要一些小的拼写错误

result = g.geocode("1600 amphiteather, mountain view")
result.valid_address
>>> True
print result
>>> 1600 Amphitheatre Pkwy, Mountain View, CA 94043, USA
g.geocode("16000000 amphitheater, mountain view").valid_address
>>> False

但谷歌并不总是有正确的邮政编码。我相信 USPS 有一个针对美国的公共 API。

免责声明:我制作了 pygeocoder

于 2011-04-24T04:32:37.243 回答
2

您可能可以使用 GeoCoding 服务(如 Google 的)来验证地址是否存在。

于 2010-08-23T18:47:06.523 回答