甚至可以执行地址(物理地址,而不是电子邮件)验证吗?似乎地址格式的数量庞大,即使在美国也是如此,这将使这项工作变得相当困难。另一方面,对于多个业务需求而言,这似乎是一项必要的任务。
甚至可以执行地址(物理地址,而不是电子邮件)验证吗?似乎地址格式的数量庞大,即使在美国也是如此,这将使这项工作变得相当困难。另一方面,对于多个业务需求而言,这似乎是一项必要的任务。
Answers:
这是一种免费的“即开即用”的方法。并非100%完美,但它应该拒绝公然不存在的地址。
将整个地址提交到Google的地址解析网络服务。这项服务会尝试返回您输入的确切位置的坐标,即纬度和经度。
以我的经验,如果地址无效,您将从服务中获得602的结果。肯定存在误报或误报的可能性,但与其他一致性检查结合使用可能会很有用。
(另一方面,如果该镇存在,但Yahoo的地理编码Web服务将返回镇中心的坐标,但其余地址是虚假的。只要您密切注意其中的“精度”字段结果)。
这里有很多很好的答案,但是大多数假设是用户希望使用“ API”解决方案,在该解决方案中,他们必须编写代码才能连接到第三方服务和/或屏蔽USPS。这一切都很好,但应将其纳入与实施相关的业务需求和成本中,然后权衡所需的收益。
根据业务需求和将数据接收到系统中的方式,实时地址处理解决方案可能是最好的选择。如果需要实时解决方案,则需要考虑Google Maps / Bing / Yahoo API的许可协议和技术限制。它们通常会限制您每天可以拨打的电话数量。USPS Web工具API相同,除了它们限制您如何/为何使用其系统以及以后如何允许您使用数据。
同时,有一些出色的服务提供商可以轻松处理静态地址列表。从本质上讲,您给服务提供商一个CSV文件或Excel文件,他们会清理它们并将其退还给您。通常,这是一项没有长期承诺或义务的一次性交易。
全面披露:我是SmartyStreets的创始人。我们会对美国境内的地址进行地址验证。我们很容易通过CASS认证列表,并且我们还提供了地址验证网络服务API。我们没有任何隐性费用,合同或任何其他内容。您可以使用我们的服务,直到不再需要它为止。(与需要签订合同的手机公司不同。)
我将向您推荐我的博客文章- 关于地址存储的课程,我将介绍地址验证过程中使用的一些技术和算法。我的主要想法是:“不要懒于地址存储,它只会在将来让您头疼!”
另外,还有另一个StackOverflow问题问这个问题。标题为如何将国际地理地址存储在关系数据库中。
在我曾经工作过的一家德国公司中,开发内部地址验证服务的过程中,我遇到了许多解决该问题的方法。我将尽力总结以下发现:
免费的开源软件
显然,任何人都会采用的第一种方法是开源方法(例如openstreetmap.org),这绝不是一个坏主意。但是,您是否真的可以将其正确,可靠地使用,很大程度上取决于您需要多少依赖结果。
地址是一个难以置信的变化。验证美国地址不是一件容易的事,而是可以承受的,但是一旦您前往欧洲,尤其是英国,拥有广泛的邮政编码系统,那么开源方法将完全缺乏数据。
网络服务/ API
企业级软件
钱显然可以解决。但是,并非每个企业或开发人员都可以为每个地址查找花费0.15美元(对于1000个API请求而言,就是150美元)。这是一种非常昂贵的业务模型,绝大多数地址验证API都已实现。
我最终整合了什么:Streetlayer API
由于我不愿意采用编程方法来手动验证地址数据,因此我得出的结论是,我需要一个价格标签不让老板想解雇我并且仍然能够提供可靠可靠的价格的API国际验证结果。
长话短说,我最终集成了由apilayer构建的API,称为“ streetlayer API”。简单的JSON集成,出乎意料的准确验证结果以及开发人员友好的价格使我很容易相信。另外,每月100个请求是完全免费的。
希望这可以帮助!
我已经使用了http://www.melissadata.com的服务, 它们的“地址对象”效果很好。它的价格很高,是的。但是,当您考虑编写自己的解决方案的成本,应用程序中的脏数据的成本,退回邮件的成本(销售损失)等等时,这些成本是合理的。
您可以尝试通过以下网址获取Pitney Bowes“ IdentifyAddress” Api:https://identify.pitneybowes.com/
该服务将输入的地址与世界各地的已知地址数据库进行分析和比较,以输出标准化的详细信息。它会更正地址,添加缺失的邮政信息,并使用适用的邮政当局首选的格式对其进行格式化。我还使用其他地址数据库,因此它可以提供增强的详细信息,包括地址质量,地址类型,音译(例如从中文汉字到拉丁字符)以及地址是否已针对房屋/房屋编号,街道或城市级别进行了验证参考信息。
您会在网站上找到很多样本和SDK,我发现它非常容易集成。
有提供这项服务的公司。处理群发邮件的服务局将清理整个邮件列表,使其格式正确,从而减少邮资。USPS出售可用于开发定制解决方案的地址信息数据库。他们还列出了提供此类软件和服务的认可供应商。
有一些(但不是很多)程序包具有用于将地址验证挂接到软件中的API。
但是,您说的很对,这是一个很讨厌的问题。
如前所述,有很多服务,如果您希望真正验证整个地址,那么我强烈建议您使用Web服务类型的服务,以确保您的应用程序可以快速识别更改。
除了上面列出的服务之外,webservice.net还提供此美国地址验证服务。http://www.webservicex.net/WCF/ServiceDetails.aspx?SID=24
我们通过Perfect Address获得了成功。
他们的数据库包含所有美国街道名称和街道编号范围。如果您很幸运拥有这种数据,它也可以作为自由格式地址字段的一个不错的解析器。
验证它是否为有效地址是一回事。
但是,如果您要验证给定的人居住在给定的地址,则唯一的保证将是一封发送到该地址的测试邮件,甚至不确定该人是否组织或认识该地址。
否则,人们只能指定一个他们知道存在的任意随机地址,这对您没有任何意义。
为了获得即时结果,您最好采取的措施是要求用户发送银行对账单或其他最近居住证明的抬头的照相/扫描副本,因为至少那样他们必须更加努力地忘记它,并且伪造说,基本的图像取证分析可以轻松显示事物。
对于基于我们的地址数据,我公司已使用GeoStan。它具有C和Java的绑定(并且我们创建了Perl绑定)。请注意,它是一种商业产品,并不便宜。不过,它的速度非常快(每秒约300个地址),并提供CASS认证(USPS大宗邮件折扣),DPV(交付点验证)标记和LON / LAT地理编码等功能。
有一个Perl模块Geo :: PostalAddress,但是它使用启发式,并且没有GeoStan提到的其他功能。
编辑:有些人提到“自己动手做”,如果您决定这样做,则美国人口普查老虎数据集是一个很好的信息来源,它包含许多有关美国的信息,包括地址信息。
雅虎也有一个Placemaker API。它仅对位置有用,但对所有世界位置都具有通用ID。
看来ISO清单中没有标准。
NAICS.com推出了一个API,该API将添加各种关键业务数据,包括街道地址。在处理您网站的表单时,这种情况会即时发生。https://www.naics.com/business-intelligence-api/
Fixaddress.com服务可提供以下服务,
1)地址验证。
2)地址更正。
3)地址拼写纠正。
4)纠正地址语音错误。
Fixaddress.com使用USPS和Tiger数据作为参考数据。
有关更多详细信息,请访问下面的链接,
VOIP E911服务是必须可靠执行地址查找的一个领域。我知道公司可以可靠地使用以下服务:
Bandwidth.com 9-1-1访问API MSAG地址验证
MSAG =主街地址指南
https://www.bandwidth.com/9-1-1/
SmartyStreet美国街道地址API
首先,消除地址验证的含义可能会有所帮助。您是否要对地址进行地理定位并确保其实际存在?您是否要确保地址接收邮件?完全公开一下,我为一家名为Service Objects的公司工作,我们提供可帮助解决这两种情况的API。我们经常从客户那里收到关于区分物理地址和邮寄地址(有时可能会有所不同)的问题,我认为这将是一个重要的区别。尽管google maps是一个非常有用的地理定位工具,但在实际验证地址以及向您提供gmaps“认为”地址所处位置之外的信息方面,它做得并不多。我们有一些博客可以帮助您进一步识别和解释这些主题:
要回答您的问题,您绝对可以使用正确的工具和权威的数据源来执行地址验证。我们以API的形式致力于解决方案,这将有助于对地址进行地理定位和验证地址。前者将有助于实际定位地址,而后者将有助于确定地址是否有效用于邮寄。如果您有兴趣,可以在下面找到两个链接
对于美国地址,您可以要求一个有效的状态,并验证邮政编码是否有效。您甚至可以检查邮政编码是否处于正确的状态,但是除此之外,我认为您可以运行很多测试,这些测试不会带来很多假阴性。
您要做什么-防止简单的错误或执行某种身份检查?
API在解析和规范街道地址数据中可以发挥至关重要的作用。这对于识别和验证USPS等公司提供的用于邮政投递的邮件地址以及UPS和FedEx等公司提供的包裹运输而言非常有用。它们的工作方式是地址验证服务将返回解析后的街道地址,其值已标准化为USPS标准。您可以在这篇文章中找到有关它的更多信息:https : //www.tomtom.com/blog/maps/what-is-address-validation/