一天地理编码服务调用次数过多

2024-01-22

我在使用 google 地图地理编码功能时收到此错误消息,据我所知,当我超过一天 2500 个请求的免费限制时,就会发生这种情况。不过,我已经设置了一个计费选项来为额外的请求支付额外费用,但我仍然收到此错误。当我设置账单时,它要求我创建一个与我的账单信息相关联的项目,我这样做了,然后我得到了一个可以使用的 API 密钥。

我不知道是否/将这个 API 密钥放在我的代码中。这是我的代码片段

 var addressColumn = 1;
  var addressRow;

  var latColumn = addressColumn + 1;
  var lngColumn = addressColumn + 2;

  var geocoder = Maps.newGeocoder().setRegion(getGeocodingRegion());
  var location;

  for (addressRow = 1; addressRow <= cells.getNumRows(); ++addressRow) {
    var address = cells.getCell(addressRow, addressColumn).getValue();

    // Geocode the address and plug the lat, lng pair into the 
    // 2nd and 3rd elements of the current range row.
    location = geocoder.geocode(address);

    // Only change cells if geocoder seems to have gotten a 
    // valid response.
    if (location.status == 'OK') {
      lat = location["results"][0]["geometry"]["location"]["lat"];
      lng = location["results"][0]["geometry"]["location"]["lng"];

      cells.getCell(addressRow, latColumn).setValue(lat);
      cells.getCell(addressRow, lngColumn).setValue(lng);
    }
  }
};

有什么想法可以将我的付费计费项目链接到此代码,以便我可以增加 API 的使用吗?


您必须在工作表更改时触发此功能,否则此功能会触发太多时间。此外,我还添加了一个计时器来减轻对第二速率限制的请求。

function getLatLng(address) {
        if(address=="")return("");
        var API_KEY = "YOUR API KEY";

        var options = {
            muteHttpExceptions: true,
            contentType: "application/json",
        };


            var serviceUrl = "https://maps.googleapis.com/maps/api/geocode/json?address=" + address + "&key=" + API_KEY;
      try{
            var response = UrlFetchApp.fetch(serviceUrl, options);

            //sleep random between 2 and 1 second for request
            var milliseconds = Math.floor(((Math.random() * 2) + 1) * 1000);  
            Utilities.sleep(milliseconds);

            if (response.getResponseCode() == 200) {
                var location = JSON.parse(response.getContentText());

                if (location["status"] == "OK") {
                    var lat = location["results"][0]["geometry"]["location"]["lat"];
                    var lng = location["results"][0]["geometry"]["location"]["lng"];

                     return([[lat,lng]]);
                }
              else{
                return([["error",location["status"]]]);
              }
            }
      }
      catch(err){
        return([["error",err.message]]);
      }
    };

您可以获得 api 密钥here https://developers.google.com/maps/documentation/javascript/get-api-key。 您可以直接在工作表单元格中使用此函数,例如:getLatLng(D2)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

一天地理编码服务调用次数过多 的相关文章

随机推荐

  • Java 中 LTRIM 和 RTRIM 的良好替代品是什么?

    JavaScript 的一个好的替代品是什么ltrim and rtrim Java 中的函数 使用正则表达式你可以写 String s String ltrim s replaceAll s String rtrim s replaceA
  • 在Vba中从多个工作表中收集平均值

    我需要将多个工作表中某个范围 C2 C11 的平均值计算到一个新工作表中 如果添加新工作表并将数据输入到指定范围内 该功能应该仍然有效 到目前为止我有这个 Sheets Add Dim myavg As Collection Set mya
  • php彩票问题多赢家问题

    我用 php 创建了一个彩票脚本 我现在的问题是选择不止一名获胜者 因为玩家的门票上有可能有相同的号码 这里我提供两个表结构和源代码 lotto game id int jackpot int status varchar10 pick 1
  • 如何使用Java JSch库逐行读取远程文件?

    我正在尝试使用Java逐行读取文件 这非常简单 stackoverflow com上有多种解决方案 但这里需要注意的是该文件位于远程服务器上 并且它不是可以获取本地副本 它是单个 txt 文件中数百万条亚马逊评论的大量集合 JSch 附带了
  • 毛伊岛:在 Android 上使用 Acrobat Reader 打开捆绑(资产)pdf 文件

    我的应用程序在下面有一个 PDF 帮助文件Resources Raw helpfile pdf 在 Android 上 应通过将其 发送 到 Acrobat Reader 来打开它 前提是它已安装在设备上 我尝试了像 从捆绑文件写入应用程序
  • 如何以 Symfony 形式制作 RadioButton?

    我有必须用 Symfony Form 重做的表单 但我坚持在这个地方 div class currency label div
  • 从 C# 打开新的 Outlook 邮件

    我希望从我的程序中生成 Outlook 消息 我能够从程序中构建和发送或构建并保存 我想要的是构建然后显示以允许用户从 AD 列表中手动选择收件人 下面的代码是此处示例和其他教程站点的混合 但是我找不到一个只是构建然后 显示 电子邮件而不保
  • Xcode 4 使用不同的配置设置构建静态库依赖项

    我想知道是否可以使用不同的配置设置编译依赖的静态库 我的情况是我有一个项目 project pbxproj 它依赖于静态库 cocoa touch 项目 libStatic pbxproj 我的项目有 3 个配置设置 例如调试 发布和临时配
  • 将列表转换为 pandas 中的日期时间

    我有福尔 熊猫列表 str jan 1 jan 15 feb 1 feb 15 mar 1 mar 15 apr 1 apr 15 may 1 may 15 jun 1 jun 15 jul 1 jul 15 aug 1 aug 15 se
  • 如何在 Android 上停止 HttpURLConnection 连接

    我使用 AsyncTask 连接 URLPath 如下代码所示 Override public void onCreate Bundle savedInstanceState super onCreate savedInstanceStat
  • 从任何活动中打开侧栏应用程序启动器

    我是 Android 开发新手 我正在考虑创建一个示例启动器应用程序来替换 Android 默认启动器 我已经创建了这个启动器 但我面临几个问题 1 单击 应用程序 按钮后 我将显示设备上安装的所有应用程序 但应用程序图标的大小不同 我尝试
  • 如何将遗传算法与一些启发式算法相结合

    我正在研究大学调度问题并为此使用简单的遗传算法 实际上它效果很好 可以在 1 小时内将目标函数值从 0 优化到 90 大约 但随后这个过程会急剧减慢 需要几天时间才能得到最佳解决方案 我看到很多论文认为将其他算法与遗传算法混合是合理的 请您
  • ASP.NET MVC 自定义路由约束、依赖注入和单元测试

    关于这个话题 我又问了一个问题 ASP NET MVC 自定义路由约束和依赖注入 https stackoverflow com questions 8308642 asp net mvc custom route constraints
  • 如何使用网络音频 API 播放声音文件 Safari?

    我正在修改一个脚本来播放我在 Codepen 上找到的 mp3 以使其能够在 Safari 上运行 在 Firefox 和 Chrome 中它工作正常 但 Safari 抱怨 未处理的承诺拒绝 类型错误 没有足够的参数 索引 html 25
  • 尝试安装biopython后Conda返回未找到属性错误符号

    我正在尝试让biopython工作 似乎我在这个过程中破坏了conda 此时 将显示 conda 的帮助菜单 并且conda version回报conda 4 7 5但其他任何事情包括conda info抛出错误AttributeError
  • 在树枝中显示货币符号

    如何在树枝中显示货币符号 我保存了符号的数值 例如 for EURO 8364 for DOLLAR 36 当我渲染这些值时 被转换为 amp 并且货币符号不显示 任何想法将不胜感激 谢谢 为了做得好 你必须添加一个function htt
  • 使用knitr生成复杂的动态文档

    最小的可重现的示例 RE 下面是我尝试弄清楚如何使用knitr用于生成复杂的动态文档 这里的 复杂 不是指文档的元素及其布局 而是指非线性逻辑底层 R 代码块 虽然提供的 RE 及其结果表明solution 基于这种方法可能效果很好 我会喜
  • 如何使用 Jenkins Workflow 插件进行 SCM 轮询

    在普通的自由式项目中 我将 SCM 插件配置为指向我想要发布的 Git 存储库 并启用 轮询 SCM 选项 这允许我配置一个 Stash webhook 来告诉 Jenkins 每当有更改时到那个仓库 这样 只要将更改推送到存储库 就可以触
  • 我可以在 Microsoft hyper-v 虚拟机中运行 Android Studio(Android SDK 模拟器)吗?

    我可以在 Microsoft hyper v 虚拟机中运行 Android Studio 和 Android SDK 模拟器吗 请仔细阅读 我已经经常将 Hyper V 用于其他目的 现在我需要开发一个Android应用程序 我已经安装了新
  • 一天地理编码服务调用次数过多

    我在使用 google 地图地理编码功能时收到此错误消息 据我所知 当我超过一天 2500 个请求的免费限制时 就会发生这种情况 不过 我已经设置了一个计费选项来为额外的请求支付额外费用 但我仍然收到此错误 当我设置账单时 它要求我创建一个