在Google Maps API中找不到位置

问题描述 投票:1回答:2

我的地址是有效地址according to the USPS ...

[1606 ULSTER AVE,凯特琳湖,NY 12449

Searching Google Maps对于我的浏览器中的该地址,将产生正确的结果。但是,Google Maps API yields ZERO_RESULTS

{
   "results" : [],
   "status" : "ZERO_RESULTS"
}

这发生在我大约1%的位置。为什么API返回单独的结果?如何获得与浏览器用户界面相同的结果?

google-maps geocoding
2个回答
1
投票

也许您在将地址提交给Google地理编码之前先对其进行验证/标准化,将会得到更好的结果。 Google快速搜索“地址验证”将为您提供许多不错的工具。

@@ geocodezip是正确的,当您删除邮政编码时,您将获得更可预测的响应。那可能是因为邮政编码是城市/州组合的数字表示,通常在许多表中被视为正标识符。但是,由于邮递区号可以随时通过美国邮政服务进行更改,因此始终删除邮递区号可能会获得更一致的响应(如果遇到问题)。始终删除邮政编码的问题在于,您现在已经删除了拥有的20%的地址信息,而且很多时候邮政编码可以胜过不良的城市/州/地区组合,但仍然可以获得有效的结果。

考虑以下无效地址:此操作失败:

275 north main Hollywsdfsdfsdfsdfood CA 84627

如果丢弃邮政编码,您将一无所获,因为275 North main不是“ Hollywsdfsdfsdfsdfood CA”中的有效地址。

但是,如果保留邮政编码,而不是使用不太可能的“ Hollywsdfsdfsdfsdfood CA”作为城市/州代号,那么最终您将得到一个完全有效的地址,位于犹他州埃弗赖姆市84627。

这里是SmartyStreets上的示例,因为Google Maps无法使用虚假的城市名称来处理它。验证的地址是:

275 N Main St Ephraim UT 84627-1107

因此,回到地理编码之前的地址验证的想法,然后您可以将该地址放入Google Maps,并轻松获得地理编码。甚至可以保留当前的流程,然后为失败的1%添加单独的例程。

[[我每天在SmartyStreets上处理这类事情,]


1
投票

[This是Places API的结果,不是来自地址解析器。

[邮政编码似乎使地址解析器感到困惑,如果我删除邮政编码,则会返回结果:

http://www.geocodezip.com/v3_example_geo2.asp?addr1=1606%20ULSTER%20AVE,%20LAKE%20KATRINE,%20NY&geocode=1

© www.soinside.com 2019 - 2024. All rights reserved.