谷歌批量地理编码API

3
我正在使用Google Geocoding API 在我的项目中进行正向和反向地理编码工作。虽然这个API只适用于单个地址或单个地理坐标对的请求,而不是批处理。我知道我可以复制和粘贴最多250行地址到Batch Geo网站上进行处理,但如果我这样做,它会非常有限且效率低下。最初,我在我的代码中通过PHP curl调用REST API,但是对于批量数据,我不知道该如何处理,并且我没有找到关于调用URL、参数、响应或状态的批处理API文档。是否有任何资源可以提供关于批处理Geocoding API的信息?顺便说一句,我在Timezone API上发现了同样的问题。

你找到解决办法了吗?我也在寻找同样的解决方案。 - undefined
3个回答

0

我觉得在你使用“批量地理编码”这个词时有一些误解。 逐个发送请求是实现批量地理编码服务的方法。你认为供应商会处理批量,但在你的情况下,供应商让你在本地实现它。

因为你的数据量很小,只需创建一个循环,逐行运行,逐个将它们发送到API,并获取结果返回。

有很多用于批量地理编码的API,你可以使用其中任何一个都没问题。

在你的情况下,可以这样:

开始循环直到集合结束 $ curl -X GET 'https://csv2geo.com/api/geocode?id={email}&key={key}&searchtext={search_text}'

获取响应返回

{ "hum_address": "781 Tremont Street,Boston,MA,2118", "address_components": { "number": "781", "street": "Tremont St", "city": "Boston", "state": "MA", "country": "USA", "zip": "02118" }, "full_address": "781 Tremont St, Boston, MA 02118, United States", "lat": 42.33957, "lon": -71.08034, "relevance": 1 }

并将其存储在一个数组集合中 结束查看


0
正如miguev所提到的,谷歌不允许批量地理编码。然而,HERE确实有一个批量地理编码器,您可以使用它来一次性地对多个地址进行地理编码。

0
Google Maps APIs支持每个请求1个查询。要批量地理编码多个地址,您需要为每个地址发送1个请求。具体实现完全由您决定。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接