【问题标题】:Daily Limit for Unauthenticated in Google SpreadsheetGoogle 电子表格中未经身份验证的每日限制
【发布时间】:2015-04-30 23:09:17
【问题描述】:

我在 Google 电子表格脚本编辑器中编写了一个简短的脚本,用于从 YouTube 频道中提取订阅者数量:

   function YouTubeSubs(channel){

   results = YouTube.Channels.list("statistics", {"forUsername":channel});

   return(results.items[0]['statistics']['subscriberCount']);
   }

它在脚本编辑器中运行良好 - 当我记录输出或调试时,它会为我提供正确的订阅人数。

但是当我把它放到电子表格中使用时,例如=YouTubeSubs('channelName'),它给了我这个错误:

已超出未经验证使用的每日限制。继续使用需要注册。

我以前使用过 YouTube API,所以我不确定为什么会出现这种情况。有什么想法吗?

【问题讨论】:

  • 是的 - 它在脚本编辑器中工作,你知道吗?但我想我发现自定义函数不能使用 YouTube API 或其他东西。我可能需要找到另一种方法来做我想做的事情。

标签: google-apps-script youtube youtube-api


【解决方案1】:

您不能在自定义函数中使用该服务。可用服务列表可在以下位置找到:

https://developers.google.com/apps-script/guides/sheets/functions#using_apps_script_services

您可以使用 UrlFetchService。因此,您可以对 YouTube API 进行 REST 调用以进行访问。

这是一个有效的版本。请注意,我使用了 channelId,但如果您愿意,可以将 id 换成 forUsername。

function YoutubeSubs(chanId){
   var url = "https://www.googleapis.com/youtube/v3/channels?key=YOURAPIKEY&part=statistics&id="+chanId;
   var res = UrlFetchApp.fetch(url,{method:"get", muteHttpExceptions:true});
  return JSON.parse(res.getContentText()).items[0]["statistics"]["subscriberCount"];
}

【讨论】:

    【解决方案2】:

    YouTube 的高级 Google 服务document 没有很好地描述限制。

    但是如果您仔细阅读以下document,您将无法在自定义功能中使用该服务。但是,您可以通过在 menu 下调用它来做到这一点。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-08-13
      • 2016-05-29
      • 1970-01-01
      • 1970-01-01
      • 2023-04-06
      • 2020-04-17
      相关资源
      最近更新 更多