我在将电子表格中列出自己的youtube视频列表时遇到一些问题。 “ maxResults”值的最大值仅为50。因此,我列出的视频不能超过50个! 如何获取我所有的youtube视频?
function searchListMine(part, params, pageToken) {
params = removeEmptyParams(params); // See full sample for function
var response = YouTube.Search.list(part, params);
var title = "";
var id = "";
var lr = 0;
var ss = SpreadsheetApp.getActiveSpreadsheet();
var nextPageToken = 'nextPageToken';
var sheet1 = ss.getSheetByName("시트2");
Logger.log(response.items.length)
for (var i = 0; i < response.items.length; i++) {
var item = response.items[i];
title = item.snippet.title;
id = item.id.videoId;
lr = sheet1.getLastRow() + 1;
sheet1.getRange(lr, 1).setValue(title);
sheet1.getRange(lr, 2).setValue(id);
lr++;
}
}
function Main() {
searchListMine('snippet', {'maxResults': '50',
'forMine': 'true',
'type': 'video',
});
}
答案 0 :(得分:0)
可以用作pageToken参数值的令牌,以检索结果集中的下一页。
nextPageToken是api返回给您的响应的一部分。您需要使用PageToken参数将其添加到请求的parms部分。
大概是这样的。
var optionalArgs = {forMine:'true', type: 'video', maxResults: 50, pageToken: pageToken}
pageToken字符串
pageToken参数标识结果集中应返回的特定页面。在API响应中,nextPageToken和prevPageToken属性标识可以检索的其他页面。
然后循环您的请求,直到nextpagetoken返回null。