我有一组20,000个地址,我需要找到它们和设置地址之间的距离。 该程序工作,但我一直遇到“一天中调用太多次服务”错误消息。有谁知道是否有办法从谷歌购买更多“查询”?
谢谢!
我正在使用的代码:
function DrivingMeters(origin, destination) {
var randnumber = Math.random()*10000;
Utilities.sleep(randnumber);
var directions = Maps.newDirectionFinder()
.setOrigin(origin)
.setDestination(destination)
.getDirections();
return directions.routes[0].legs[0].distance.value;
}
function DrivingMiles(origin, destination) {
return DrivingMeters(origin, destination)/1609.34;
}
function DrivingSeconds(origin, destination) {
var directions = Maps.newDirectionFinder()
.setOrigin(origin)
.setDestination(destination)
.getDirections();
return directions.routes[0].legs[0].duration.value;
}
function DrivingHours(origin, destination) {
return DrivingSeconds(origin, destination)/(60*60);
}
答案 0 :(得分:1)
通过引用“查询”,您的意思是“配额”。不同的服务具有不同的每日配额。可能的异常消息是:
Service invoked too many times: Calendar.
这表示脚本在一天内调用给定服务的次数太多。
对于普通消费者(gmail.com),这一行值得注意:
网址提取电话:20,000 /天
(有关所有文档,请参阅here)
在谷歌搜索“购买更多应用程序脚本配额”后,没有有希望的结果。一些变通方法建议使用其他框架或从多个用户分割配额。我的建议是考虑从“消费者”级别升级到“Google Apps for Your Domain”级别(或更高级别)。
P.S。您的问题中的一些示例代码可能有所帮助,因此我们可以缩小您尝试使用的服务范围,以及是否有任何可能的方法可以提高您的代码效率。