我已经在Google电子表格脚本编辑器中写了一个简短的脚本,以从YouTube频道提取订户计数:
function YouTubeSubs(channel){
results = YouTube.Channels.list("statistics", {"forUsername":channel});
return(results.items[0]['statistics']['subscriberCount']);
}
,它在脚本编辑器中正常工作 - 当我记录输出或调试时,它为我提供了正确的订户计数。
但是,当我将其放入电子表格中供使用时,例如 = YouTubesubs('channelname'),它给了我这个错误:
超出了未经身份使用的每日限制。继续使用需要注册。
我之前曾使用过YouTube API,因此我不确定为什么在这种情况下会发生这种情况。有什么想法吗?
您无法在自定义函数中使用该服务。可用服务列表可以在以下方式找到:
在您可以使用urlfetchservice。因此,您可以拨打YouTube API的休息。
这是一个有效的版本。请注意,我使用了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"];
}
YouTube文档的高级Google服务不能很好地描述限制。
但是,如果您仔细阅读以下文档,则不能在自定义功能中使用该服务。但是,您可以通过在菜单下调用它来做到这一点。