GAS(Google Apps Script)でYoutubeに動画をあげる

こんにちは。「新田いおり」といいます。今回はGAS(Google Apps Script)を使用して、GoogleDriveにある動画ファイルをYoutubeに上げる方法を記述します。よろしくお願いします。

Gasを使用することで、いろいろなことが、自動化できたり便利になったりします。何らかの時にGoogleDriveにある動画をYoutubeに載せたいと思った方がいて、この記事を読んでいただけるととても光栄です。また、近日にGasからGoogleDriveに動画ファイルを上げるプログラムを書こうと思っています。そちらと組み合わせれば簡単な動画投稿さいとが作れると思います。

※YoutubeのAPI的に動画を載せるのは1日6本が限界?のようです。気をつけてください。

GAS(Google Apps Script)の作成

下記の画像のように、GoogleDrive「新規」→「その他」→「Google Apps Script」を選択すると作成できます。

Youtubeライブラリの追加

左側にある「サービス」の「サービスを追加」をクリックしてください。

クリック後、下のような画面が出ます。その時に「Youtube Data API v3」を選択し、追加を押してください。YoutubeDataAPIのドキュメントはこちらから。

コードを書く

function main() {
  // GoogleDriveにある動画ファイルのid
  const video_id = "<Google Deiveの動画ファイルIDを記載 → 動画ファイルIDの確認方法はページ下に書いておきます。>";

  // video_idのファイルの取得
  const video = DriveApp.getFileById(video_id);
  // 動画の情報の設定
  const video_config = {
    snippet: {
      title: "GAS(Google Apps Script)を使用してYoutubeに動画をあげる方法", // タイトル
      description: "ここに動画の概要欄を記入\n\nこんにちは。\n「新田いおり」といいます。今後もよろしくお願いします。", // 概要欄
      defaultLanguage: "ja",// 言語
      categoryId: 22, // カテゴリー // 22はブログのカテゴリー
      tags: ["Blog", "GAS", "Youtube", "Nitta_iori"], // タグの設定
    },
    status: {
      privacyStatus: "unlisted", // public:公開 private:プライベート unlisted:限定公開
    },
  };

  // 動画に変換
  youtubeUpload(video, video_config)
    .then(id => {
      // idの取得
      const youtube_id = id;
      // idからurlの作成
      const youtube_url = `https://www.youtube.com/watch?v=${youtube_id}`;
      console.log(youtube_url);
    })
    .catch(error => {
      console.error(error);
    });
}

// Youtubeに動画をアップロードする関数
function youtubeUpload(video, config) {
  return new Promise((resolve, reject) => {
    // 動画ファイルのデータ取得
    const blob = video.getBlob();

    // 動画を上げるやつ。左のサービスからYoutube Data Api v3を追加しないといけない
    const youtube_upload = YouTube.Videos.insert(config, "snippet,status", blob);

    // 動画のid取得
    const youtube_id = youtube_upload.id;
    resolve(youtube_id);
  });
}

動画のカテゴリー一覧の参考: https://gist.github.com/dgp/1b24bf2961521bd75d6c

実行

画像のように「main」に設定されていることを確認して「実行」をクリックしてください。

※最初の実行のみ下の画像のように、アクセスリクエストが来ると思いますが、個人の責任のもと「許可」をしてください。

実行するとYoutubeのURLが表示されるので、そちらに飛ぶと投稿できている状態になります。

※Youtubeの投稿には少々時間がかかるので、サイズの大きい動画などは少ししてからみるといいと思われます。

GoogleDriveの動画IDの取得方法

GoogleDriveから動画を開くと下の画像のような画面になると思います。

画面の右上にある「点々」から「新しいウィンドウで開く」をクリックし、

表示されているURLの青い部分を使用してください。

コメントする