【发布时间】:2020-11-23 23:08:54
【问题描述】:
所以,我完全被难住了。我不知道为什么我会超出 YouTube API 配额。根据我的记录,我每天只发出约 1000 个获取请求。但是当谈到 YouTube 配额时,我已经达到了 20k 的限制。
但是,当我查看实际方法时,我只记录了 709 个关于播放列表项目的获取请求(每约 20 分钟扫描一次 youtube 播放列表以获取新评论)和 249 个搜索请求(在 YouTube 上搜索新游戏预告片)。
我正在使用 nodejs api / 包。
我上周刚刚刷新了 API 密钥并删除了所有未使用的 API 密钥。我非常确信那里没有恶意 API 密钥。
代码示例...
const yt = google.youtube({version: 'v3', auth: 'XXXXXXXXX-my-api-key-XXXXXXXXX'});
function searchByVideoTitle (title, order, token, channelId) {
let req = {
part:'snippet',
q: title,
maxResults: 10,
order: order || "relevance",
pageToken: token || null
};
if (channelId) {
req.channelId = channelId;
}
return new Promise(function (resolve, reject) {
loggly.log('info', 'BlackWidow searching by video title: ' + title);
fileLog.info('BlackWidow searching by video title: ' + title);
yt.search.list(req, function (err, response) {
if (err) reject(err);
...
});
});
}
function getPlaylistVideos (channelId) {
currentPlaylistRequests++;
if (currentPlaylistRequests > playlistLimit) {
return Promise.reject(' too many requests ' + channelId);
}
loggly.log('info', 'BlackWidow searching playlist: ' + channelId);
fileLog.info('BlackWidow searching playlist: ' + channelId);
return yt.playlistItems.list({part: "snippet", playlistId: channelId, maxResults: 10}).then(results => {
return results.data.items.map(item => {
return {
title: item.snippet.title,
description: item.snippet.description,
publishedDate: item.snippet.publishedAt,
externalUrl: "https://www.youtube.com/watch?v=" + item.snippet.resourceId.videoId
}
})
})
}
【问题讨论】:
标签: youtube-api youtube-data-api google-api-nodejs-client