从 5 位邮政编码、程序化、api 获取 9 位邮政编码

Posted

技术标签:

【中文标题】从 5 位邮政编码、程序化、api 获取 9 位邮政编码【英文标题】:get 9 digit zip code from 5 digit zip code, programmatic, api 【发布时间】:2013-02-08 14:42:29 【问题描述】:

我有 5 位邮政编码,这些是从 Google Maps Api 检索到的。

我的困境是我必须连接到一个也包含地址的远程数据库。如果该地址在该数据库中不存在,我必须编写它,如果它确实存在,那么除了存储数据库分配给该地址的 ID 之外,我什么也不做。出现问题是因为检查此数据库的 api 不使用通配符,该数据库中的地址具有 9 位邮政编码 (5+4),并且不会返回地址的其余部分与我的地址与 5 位邮政编码匹配。

远程系统会告诉我该地址与我发送的地址不存在。

因此,为了防止重复的地址被写入数据库,我需要在发送之前找到我所拥有的邮政编码的 9 位版本。

如何做到这一点?是否有确定 5 位地址的最后 4 位是什么的公式? USPS 有 API 吗?人口普查有一张大桌子吗?

洞察力赞赏

【问题讨论】:

是的,USCB 有一个“巨表”,但它是 shapefile 形式,按城市细分。我看过它们,并将它们与 Python 脚本一起使用。 (这很有趣!)实际上,USCB 不使用邮政编码来存储他们的数据,但由于大众需求,他们创建了“ZCTAs”(邮政编码制表区)来尝试将他们的人口普查区链接到邮政编码。 .. 无论如何,这只是琐事,可能不是你要找的。​​span> 【参考方案1】:

如果您使用 USPS 发送邮件,您只能使用 USPS API 获取信息...

但是您可以查看 SmartyStreets(我曾经在那里工作过)或其他 CASS 认证的供应商。它们已获得地址验证许可,您还可以在没有地址的情况下执行城邦和邮政编码查找(取决于您选择的对象)。

我认为您会发现它们比默认的 USPS 网络服务更简单、更全面。

这里有一些示例代码...任你选择:https://github.com/smartystreets/LiveAddressSamples

【讨论】:

【参考方案2】:

美国邮政服务有a number of APIs。他们的“地址信息 API”包括:

地址标准化

消除寻址错误并帮助确保准确及时地送达。此工具可纠正街道地址中的错误,包括缩写和缺失信息。它还提供 ZIP+4® 代码。

邮政编码™ 查找

为美国的任何给定地址、城市和州查找匹配的邮政编码或 ZIP+4 编码

城市/州查询

使用邮政编码获取准确的城市和州信息。

Address Information APIs require permission to use。

【讨论】:

是的,但只有通过 USPS 邮寄时才允许这样做。查看他们的服务条款。

以上是关于从 5 位邮政编码、程序化、api 获取 9 位邮政编码的主要内容,如果未能解决你的问题,请参考以下文章

使用带有 Web 平台安装程序 API 的 Powershell 仅在 64 位机器上获取 x86 安装程序

java开发常用工具类集合总结

我无法使用 Geonames API 从邮政编码中获取城市名称

从邮政编码获取 LatLng - Google Maps API

如何从谷歌地图自动完成 api 获取邮政编码

从英国邮政编码获取进出代码