Google Maps API v3地理编码OVER_QUERY_LIMIT

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

我有一个应用程序,需要一次对大量地址进行地理编码(〜1500)。我正在使用Javascript Google Maps API Library v3检索纬度和经度,并且该信息已存储在MySQL数据库中,以备后用。

显然,这需要一段时间。我的代码将地址放入数组,然后在数组上调用递归函数。该函数获取每个地址并尝试对其进行地址编码。如果地址解析成功,则该功能将从下一个地址继续。如果地址解析返回ZERO_RESULTS,则该功能将从下一个地址继续。如果地理编码返回OVER_QUERY_LIMIT,则该函数使用setTimeout暂停一段指定的时间(存储在var timeout中,然后再次重试。

现在我为timeout尝试了许多不同的值,它们在工作方式上也有所不同。最好的是2000或两秒钟,这使我可以对365个地址进行地址解析。但是,一旦程序对大约250个地址进行了编码,它将完全减慢速度,使其达到每10秒对1个地址进行编码的程度。

所以。有人知道如何加快此过程吗?我目前还拥有一个计数器,用于检查在同一地址上调用该函数的次数(以跟踪在编码该地址之前收到了多少OVER_QUERY_LIMIT错误)。我是否应该正常延迟2秒,然后如果同一地址接收到OVER_QUERY_LIMIT 10次,延迟30秒之类的东西?

非常感谢您的帮助!干杯

我有一个应用程序,需要一次对大量地址进行地理编码(〜1500)。我正在使用Javascript Google Maps API Library v3检索纬度和经度,以及...

javascript google-maps-api-3 geocoding
1个回答
0
投票

您可以支付更高的限额或使用其他地理编码提供商。

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