GoogleスプレッドシートでYouTubeの再生数を自動取得する方法【App Scriptとトリガー設定】

JavaScript

Googleスプレッドシートを使ってYouTubeの再生数を自動で取得したい場合、App Scriptを使用することで自動化できます。しかし、質問者のようにトリガー設定後に再生数がスプレッドシートに反映されない問題が発生することがあります。この記事ではその解決方法を解説します。

1. 目標:YouTubeの再生数をGoogleスプレッドシートに自動で反映

まず、GoogleスプレッドシートにYouTube動画の再生数を自動で記録したいという目標を達成するためには、以下の流れを実行する必要があります。

  • App ScriptでYouTube APIを呼び出す
  • 取得したデータをスプレッドシートに書き込む
  • 時間ごとにデータを更新するためのトリガー設定

2. App ScriptでYouTubeの再生数を取得するコードの基本

まず、YouTube APIを使用するためにGoogle Apps Scriptで以下のコードを記述します。これをスプレッドシートのスクリプトエディタに追加してください。

function getMovieViews() {
  var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Sheet1');
  var videoId = 'YOUR_VIDEO_ID';
  var url = 'https://www.googleapis.com/youtube/v3/videos?part=statistics&id=' + videoId + '&key=YOUR_API_KEY';
  var response = UrlFetchApp.fetch(url);
  var json = JSON.parse(response.getContentText());
  var viewCount = json.items[0].statistics.viewCount;
  sheet.getRange('A1').setValue(viewCount);
}

このコードは、指定したYouTubeの動画IDに基づいて再生数を取得し、それをGoogleスプレッドシートに書き込む役割を果たします。

3. トリガーの設定で自動更新を実現する

次に、YouTubeの再生数を定期的に更新するために、トリガーを設定します。スクリプトエディタで以下の手順を行ってください。

  • スクリプトエディタを開き、左側の「時計」アイコンをクリックしてトリガー管理画面を開く
  • 「新しいトリガーを追加」を選択し、`getMovieViews`関数を選び、トリガーを時間ベース(例えば1時間おき)で設定
  • トリガー設定を保存

4. トリガーが反映されない場合の確認事項

質問者が直面している「再生数がスプレッドシートに反映されない」問題を解決するためには、以下の点を確認します。

  • 関数が正しく実行されているか:Google Apps Scriptの実行ログを確認し、`getMovieViews`関数が正常に実行されているか確認します。エラーが出ていないか確認しましょう。
  • トリガーが設定されているか:トリガーが正しく設定されているか再度確認します。トリガーが設定されていないと、自動で更新されません。
  • APIキーの確認:YouTube Data APIを使用するにはAPIキーが必要です。APIキーが正しく設定されているか確認します。

5. まとめとトラブルシューティングのポイント

GoogleスプレッドシートでYouTubeの再生数を自動で取得するためには、App ScriptとYouTube APIを活用したコードの実装、そして適切なトリガー設定が必要です。もしスプレッドシートにデータが反映されない場合、エラーや設定ミスが原因です。上記のポイントを確認し、もう一度設定を見直してみましょう。

コメント

タイトルとURLをコピーしました