LoginSignup
20
15

More than 5 years have passed since last update.

公開されたGASのYouTubeAPIを少し使ってみた。

Last updated at Posted at 2013-12-17

なんか、間に合わせな内容で申し訳ないですが、Google Apps Script Advent Calendar 2013の17日目です。

簡単に追加されたAPIの紹介

つい先日、Google Apps Scriptから実行できるAPIが追加されました。追加されたのは以下のAPIです。

  • Admin SDK
  • Fusion Tables
  • Google+ Domains
  • Mirror
  • YouTube
  • YouTube Analytics

色々触ってみたいものですが、なかなか時間もなく…。
ということで、YouTube Data APIのsearchを実行してみました。
YouTube Data API以外にもYouTube Live Streaming APIも実行できるようです。

APIを使う前の有効化や承認など。

まず、スクリプトエディタのリソース→「Advanced Google services...」を選択し、

service有効化.png

有効にしたら、「Cloud Consoleでサービスも有効にしないといけない」というリンクがでるのでリンクをクリックして、Cloud Consoleを表示します。

cloudconsole.png

Cloud ConsoleでYoutube Data APIを有効にしたら、コードを書いて、実行。

実行時に承認を求められるので承認します。(最初はログ出力だけにしていたのですが、Spreadsheetに結果を出力したので、実際には、Spreadsheetの承認も求められると思います)
承認.png

公開されたGASのYouTubeAPIを少し使ってみた。

以下のコードを実行すると、今年のGoogle Apps Scriptの関連動画が最大25件表示されます。
せっかくですので、GAS関連の動画をお楽しみ下さい。

コード.gs
function myFunction() {
  // eventType=completedはtype=videoの時に使える。
  // eventType=completedのみの指定だとエラーになる。
  // 公開されたのが2013年以降の動画
  // 日付の新しい順に、最大25件
  var results = YouTube.Search.list('id,snippet', {
    q: 'Google Apps Script',
    type: 'video',
    eventType: 'completed',
    maxResults: 25,
    order: 'date',
    publishedAfter: '2013-01-01T00:00:00Z'
  });

  var data = [];
  for(var i = 0; i < results.items.length; i++) {
    Logger.log(results.items[i]);
    var item = results.items[i];
    data.push([item.snippet.title, item.snippet.description, item.snippet.publishedAt, "http://www.youtube.com/watch?v=" + item.id.videoId]);
  }

  SpreadsheetApp.getActive().getRange("A1:D25").setValues(data);
}

Youtube Data APIのsearchのドキュメントは以下のURLにあります。
(https://developers.google.com/youtube/v3/docs/search/list)

20
15
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
20
15