YouTube Data API v3 で、特定チャンネルの最新の動画IDを取得するには?

YouTube Data API v3 で、特定チャンネルの最新の動画IDを取得するには?

YouTube Data API v3 という、Googleが提供しているAPIがあります。本記事は、そのAPIを使って、YouTubeのある特定のチャンネルの、最新の動画IDを取得してみようと思います!

これができれば、「自分のWebサイトに、最新の動画を自動的に表示する」ということも可能になります。

はじめに

こちらが公式ページですね。

YouTube Data API の概要  |  YouTube Data API (v3)  |  Google Developers

公式ページは情報量が多いので、この記事では、できるだけシンプルに説明していこうと思います。

Google アカウントを作成しておく

YouTube Data API v3 を使用するには、Googleアカウントを作成しておく必要があります。すでに持っている場合は、それを使うこともできます。

YouTube Data API v3 を有効にする

まず、Google APIs のダッシュボードに入ります。

Google Cloud Platform

ダッシュボードの上の方に表示されている、「APIとサービスの有効化」をクリックします。

すると、APIを検索できる画面(「APIライブラリ」)に遷移します。ここには、APIが使える様々なGoogleのサービスが並んでいます。

今回は、YouTube のAPIを使用するので、YouTube と検索し、「YouTube Data API v3」を選択します。

「有効にする」をクリックします。

これで、YouTube Data API v3 を有効にできました!

APIキーを取得する

次に、「APIキー」を取得します。APIキーとは、文字通り、APIにアクセスするために必要なパスワードのようなものです。APIにアクセスするための方法は、APIキーを使う方法以外にもいくつかあるのですが、今回は「APIキー」を使った方法を説明します。

まず、左のメニューから「認証情報」をクリックして、「認証情報を作成」ボタンをクリックします。

いくつか選択肢が表示されますが、「APIキー」を選択してください。

これで、APIキーが作成できました!このダイアログは、そのまま閉じて大丈夫です。

※ 「キーを制限」という機能がありますが、これを使えば、ある特定のWebサイトからのみAPI実行を許可する、などということができます。セキュリティを向上させるために必要な部分ですが、本記事では割愛します。

実際にAPIを叩いてみる

それでは実際に、特定のチャンネルの最新の動画IDを取得するため、検索のAPIを実行してみます。

検索APIのURLは、https://www.googleapis.com/youtube/v3/search となっています。このURLに、必要なパラメータをつけて実行します。ここでは、以下の4つをつけてみます(詳しい説明は公式ドキュメントをご覧ください)。

  • part=id
  • channelId=UCGGhM6XCSJFQ6DTRffnKRIw (ロックバンド「MUSE」のチャンネルID)
  • order=date (新しい順)
  • key=XXXXX (上記で取得したAPIキー)

これらのパラメータをつけると、具体的には以下のようなURLになります。
https://www.googleapis.com/youtube/v3/search?part=id&channelId=UCGGhM6XCSJFQ6DTRffnKRIw&order=date&key=XXXXX

このURLに、ブラウザからアクセスしてみてください。

すると、以下のようなjson形式のデータが返ってきます。

itemsというキーの中に、動画の情報が配列で返ってきていることが分かります。新しい順で取得しているので、配列の1番目の要素のid > videoId が、最新の動画IDということになります。

これで無事に、最新の動画IDが取得できました!
実際の運用では、各種プログラミング言語からこのAPIを叩いて、jsonをパースする流れになるかと思います。

まとめ

APIを実行するまでの準備が色々と必要なため、少しハードルが高く感じたかも知れませんが、他のGoogleサービスのAPIを使うときにも応用できるはずなので、一度はやっておくと良いかなという気がしました。

API Reference  |  YouTube Data API (v3)  |  Google Developers