GASでYoutube Data APIを使用してYoutubeチャンネル・動画のデータを取得【Google Apps Script】

API「YouTube Data API v3」を使用

※1日当たりのリクエスト数等制限があります

YoutubeDataAPI概要サイト

ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー

実際に使用したサンプルコード

〇チャンネル情報を順番に取得するケース
function myFunction() {

//YouTube.Channels → YouTube チャンネルに関する情報が格納
 listメソッドでリクエスト条件に一致する情報を取得します
 ※snippetはチャンネルのタイトルや説明などの基本的な詳細情報で
 statisticsはチャンネルの再生回数などの統計情報です
 その2つを指定し、その後idを指定してチャンネルを指定します

let 結果 = YouTube.Channels.list("snippet,statistics", { id:"UCHP76ZuS_0luJpGErA1JF-Q" });

//チャンネルのタイトル
Logger.log(結果.items[0].snippet.title);

//チャンネルの作成日時
Logger.log(結果.items[0].snippet.publishedAt);

//チャンネルの説明
Logger.log(結果.items[0].snippet.description);

//チャンネルの登録者数
Logger.log(結果.items[0].statistics.subscriberCount);

//チャンネルの公開動画の数
Logger.log(結果.items[0].statistics.videoCount);

//チャンネルの再生回数
Logger.log(結果.items[0].statistics.viewCount);

}

〇セルから順番にIDを取得してチャンネル情報を配列に入れセルに入れるケース

function myFunction() {

let spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
let sheet = spreadsheet.getSheetByName("data");

for(i = 2; i < 7; i++){

let 配列 = [];

let channelid = sheet.getRange(1,i).getValue();

//YouTube.Channels.list → YouTube チャンネルに関する情報が格納
//※「snippet」には、チャンネル情報(チャンネルのタイトル、登録日、説明文、アバター画像のサムネイル)
//※「statistics」には、チャンネル全体でのコメント数、登録者数、動画数、再生回数
let 結果 = YouTube.Channels.list("snippet,statistics", { id:channelid });

//チャンネルの情報のタイトル(チャンネル名)
配列.push([結果.items[0].snippet.title]);

//チャンネルの情報の登録日(チャンネル登録日)
配列.push([結果.items[0].snippet.publishedAt]);

//チャンネルの情報の説明文(チャンネル説明文)
配列.push([結果.items[0].snippet.description]);

//詳細情報のチャンネル登録数
配列.push([結果.items[0].statistics.subscriberCount]);

//詳細情報の動画数
配列.push([結果.items[0].statistics.videoCount]);

//詳細情報の再生数
配列.push([結果.items[0].statistics.viewCount]);

//配列を指定したセルに入れる
sheet.getRange(2,i,配列.length,1).setValues(配列);

}

}


〇動画IDから動画データを取得するケース

function videostest() {

//YouTube.Channels.list → YouTube チャンネルに関する情報が格納
//※「snippet」には、チャンネル情報(チャンネルのタイトル、登録日、説明文、アバター画像のサムネイル)
//※「statistics」には、チャンネル全体でのコメント数、登録者数、動画数、再生回数
let 結果 = YouTube.Videos.list("snippet,statistics", { id:"3WW6RMmx-_I" });

//動画のタイトル
Logger.log(結果.items[0].snippet.title);

//動画の公開日
Logger.log(結果.items[0].snippet.publishedAt);

//動画の説明文
Logger.log(結果.items[0].snippet.description);

//動画の再生数
Logger.log(結果.items[0].statistics.viewCount);

//動画のコメント数
Logger.log(結果.items[0].statistics.commentCount);
}

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です