情况: 我的任务是将地址编码并将地址绘制到城市地图中,以供该家庭的朋友使用。
我有400多个地址的列表。这些地址包括邮政信箱和地址,街道号码,方向,街道名称,街道后缀(有些没有这个),城市和邮政编码。
我尝试使用Geopy和Nominatim对所有地址进行地理编码。
问题:
我注意到那些没有街道后缀和邮政信箱的地址无法进行地理编码。
我做了什么:
我已经阅读了大多数关于地址的帖子,阅读了Geopy笔记并搜索了谷歌,直到奶牛回家。
我最终在一个地理编码网站上磕磕绊绊,无法映射邮政信箱,并且映射需要街道后缀。
http://www.gis.harvard.edu/services/blog/geocoding-best-practices
问题:
有没有办法搜索缺少街道后缀的每条街道的街道后缀?
是否有其他可以使用Nominatim和Geopy以外的免费服务或图书馆,可以利用我所拥有的信息而不要求我在Google地图中查找每个街道后缀?
请指教!
答案 0 :(得分:1)
我发现使用Geopy和Google的API可以找到Nominatim,OpenCage和OpenMapquest等服务的正确地址。
有一个缺点,自动填充功能可能很难确定地址是否正确。
答案 1 :(得分:0)
首先,在需要找到缺少街道后缀的地址时,您需要使用地址验证服务中的地址完成。解决验证/验证的服务使用邮政服务数据(和其他数据)并将地址搜索输入与实际地址相匹配。如果搜索输入不够具体,则地址验证服务可能会返回少量潜在匹配。这里是an example of a non-specific address(缺少州,邮政编码和街道后缀),它返回两个与搜索输入匹配的真实地址。 SmartyStreets通常可以填写缺失的街道后缀。
其次,谈到邮政信箱问题:某些地址服务可以为您提供地理编码信息,以及您可能认为不可用的其他信息。例如,this search shows the SmartyStreets service将邮政信箱号码(我刚刚编写的)与当地邮局相匹配。当我在Google地图上搜索时,响应JSON中的纬度和经度对应于邮局。
第三,谈到拥有地址列表的问题:有各种地址服务允许批处理。例如,允许用户上传地址电子表格是一个相当常见的功能。这是SmartyStreets工具的information page。
有多种地址服务可以帮助您完成所有或部分这些事情。根据服务的不同,如果您不进行很多搜索,它们将提供一些免费功能或免费提供。我不知道一项服务可以免费提供您所需要的一切。您可能可以一起使用一些服务,例如Google Maps API到Geopy等,但是需要花费精力来编写脚本以将它们放在一起。
完全披露:我在SmartyStreets工作。