(O+P)ut

アウトプット



(O+P)ut

エンジニアのアウトプット

【YoutubeAPI】チャンネル登録者数を取得する

スポンサーリンク

f:id:mtiit:20181217203823p:plain

チャンネル登録者の取得

例えば以下のURLをWebブラウザで表示させると

https://www.youtube.com/channel/UCZf__ehlCEBPop-_sldpBUQ

HikakinTVのトップページが表示され、
そこにチャンネル登録者がチャンネル登録用ボタンと共に表示されています。

f:id:mtiit:20181217175944p:plain


本記事ではYouTube APIを利用して、シンプルにチャンネル登録者数を取得してみたいと思います。

Youtube API利用の準備

API利用のためにはGoogleアカウントが必要です。

Youtube API」などと検索すればGoogle Cloud Consoleが出てきます。
案内にそって、プロジェクトを作成、APIキーを生成します。

ちなみにAPIキーの実体は長い英数の文字列です。後ほど使用します。

あとは、使用したいAPIのステータスをONにする必要があります。

f:id:mtiit:20181217180812p:plain

今回利用するメソッドを利用するためには上の図の左にある「Youtube Data API v3」を有効化する必要があります。
ちなみに、こちらを有効化せずに後ろで示すURLを入力しても403: Forbiddenでエラーとなりますのでご注意ください。

実際に情報を取得する

URLを利用して情報にアクセスします。
今回はpartのパラメータstatisticsを利用します。
利用するURLは以下となります。先ほどONにしたv3がURLの中にあることが分かります。

https://www.googleapis.com/youtube/v3/channels?part=statistics&id={チャンネルID}&key={APIキー}

チャネルIDとは、対象のチャンネル毎に割り当てられる文字列でURLの中に含まれています。
先ほどのHikakinTVであれば「UCZf__ehlCEBPop-_sldpBUQ」となります。
あとは、生成したAPIキーを入れればURLは完成です。

https://www.googleapis.com/youtube/v3/channels?part=statistics&id=UCZf__ehlCEBPop-_sldpBUQ&key={APIキー}

これをWebブラウザのURLに入れますと、以下のような結果が表示されます。

{
 "kind": "youtube#channelListResponse",
 "etag": "\"XI7nbFXulYBIpL0ayR_gDh3eu1k/oW2_9hkyME04XMIpEexTKA78mGY\"",
 "pageInfo": {
  "totalResults": 1,
  "resultsPerPage": 1
 },
 "items": [
  {
   "kind": "youtube#channel",
   "etag": "\"XI7nbFXulYBIpL0ayR_gDh3eu1k/j9s3111G00ThiLcBsQ-2L3k4fns\"",
   "id": "UCZf__ehlCEBPop-_sldpBUQ",
   "statistics": {
    "viewCount": "5411673925",
    "commentCount": "0",
    "subscriberCount": "6822289",
    "hiddenSubscriberCount": false,
    "videoCount": "2536"
   }
  }
 ]
}

subscriberCount部分にチャンネル登録者情報が記載されています。

wget -O - "https://www.googleapis.com/youtube/v3/channels?part=statistics&id=UCZf__ehlCEBPop-_sldpBUQ&key={APIキー}" 2> /dev/null

でも同じ結果が取得できますので、Webブラウザを利用せずに情報を取得したい場合に便利です。

まとめ

YoutubeAPIで最も簡単な部類の一つであるチャンネルの登録者数を取得してみました。

他にもおもしろいデータが取得可能なので、別途記事にしたいと思います。