1.前提・実現したいこと
特定のチャンネルのキーワード、日付に沿った動画をすべて取得し、googleスプレッドシートに表示させたいです。
2.発生している問題・エラーメッセージ
ですが、下記の最大50個までしか取得できません。
3.該当のソースコード
GAS
1function searchByKeyword() { 2 3 4// データを取得 5const results = YouTube.Search.list('snippet', { 6channelId:'チャンネルID', 7publishedAfter:'YYYY-MM-DDT00:00:00Z', 8publishedBefore:'YYYY-MM-DDT00:00:00Z', 9q:'キーワード', 10maxResults: 50 11}); 12 13//シート定義 14const ss = SpreadsheetApp.getActiveSpreadsheet() 15const sheetName1 = "シート名"; 16const srcSheet = ss.getSheetByName(sheetName1); 17//データを貼り付けるシートをクリア 18srcSheet.clear() 19 20// ログに表示 21for(let i = 0; i < results.items.length; i++){ 22Logger.log(results.items[i].snippet.title) 23Logger.log(results.items[i].snippet.publishedAt) 24Logger.log(results.items[i].snippet.channelTitle) 25Logger.log(results.items[i].id.videoId) 26Logger.log(results.items[i].id.channelId) 27 28// 追加(スプレッドシートにデータを表示) 29srcSheet.getRange(i+1, 1).setValue(results.items[i].snippet.title) 30srcSheet.getRange(i+1, 2).setValue(results.items[i].snippet.publishedAt) 31srcSheet.getRange(i+1, 3).setValue(results.items[i].snippet.channelTitle) 32srcSheet.getRange(i+1, 4).setValue(results.items[i].id.videoId) 33srcSheet.getRange(i+1, 5).setValue(results.items[i].id.channelId) 34 35} 36}
4.自分で調べたことや試したこと
そのため、youtube data api公式リファレンスよりpagetokenをスクリプトに組み込むと最大個数50個以上の情報が取得できるということはわかりました。しかし、他のウェブサイトで調べてもpagetokenをどこに、どう組み込めばいいかわかりません。
5.使っているツールのバージョンなど補足情報
Google Apps Script
初心者のためわかりにくい文章になってましたらすみません。

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2022/06/09 23:13