見出し画像

YouTubeのチャンネル情報を取得するためにYouTubeAPIを使ってみた。YouTubeAPIを使うには

YouTubeのチャンネル情報を取得する必要があったで、YouTubeのAPIを使ってみました😏Qiitaに書くようなネタなので面白くはありません😅
これで、人気YouTuberのランキングやYouTuberのチャンネル登録者数遷移などを活用してサービスを考えることができます

YouTubeAPIを利用するための前準備

1:GoogleCloudPlatformにプロジェクトを作成する

ここからプロジェクトの作成画面に移動して、新しいプロジェクトを作成します。

スクリーンショット 2020-09-30 7.51.15

2:YouTube Data API v3を有効にする

ここからYouTube Data API v3を有効にします。
APIを有効する際に先ほど作成したプロジェクトを選択して有効にします。

スクリーンショット 2020-09-30 7.54.01

3:認証情報(APIキー)の作成と取得

ここからAPIキーを作成します

スクリーンショット 2020-09-30 8.28.50

作成したAPIキーを使ってYouTubeAPIを使います。APIキーは、特定のサイトやIPアドレスからのアクセスに限定することができるので、最終的にAPIに制限設定をしておくと良いと思います

PythonでYouTube Data APIからデータ取得

今回は、pythonでapiを利用してみました⭕️
Python 3.8.5
Pythonには、YouTube Data APIを利用するためのパッケージがあるので、こちらを利用していきます。まずは、パッケージのインストールから

pip install google-api-python-client

詳しく知りたい方はこちら

特定のYouTubeチャンネルのプロフィール情報を取得プロジェクトの作成

YouTubeのData APIを用いて、YouTubeのチャンネル情報を取得してみます。
・チャンネルタイトル
・チャンネルの説明文
・チャンネル開設日
・チャンネルアイコン
・チャンネルの視聴回数
・チャンネルの登録者数
・チャンネルの動画登録数

#!/usr/bin/env python
# -*- coding: utf-8 -*-

import json
from apiclient.discovery import build
import sys

args = sys.argv
SEARCH_CHANNEL_ID = args[1]

API_KEY = '*** APIキー ***'
YOUTUBE_API_SERVICE_NAME = 'youtube'
YOUTUBE_API_VERSION = 'v3'

youtube = build(
   YOUTUBE_API_SERVICE_NAME,
   YOUTUBE_API_VERSION,
   developerKey=API_KEY
)

response = youtube.search().list(
   part = "snippet",
   channelId = SEARCH_CHANNEL_ID,
   maxResults = 1,
   order = "date"
   ).execute()

for item in response.get("items", []):
   if item["id"]["kind"] != "youtube#video":
       continue
   
  print(json.dumps(item, indent=2, ensure_ascii=False))

引数で検索したいチャンネルのIDを渡すと情報を取得(上記のプログラムでは表示)します。
*** APIキー ***の部分にAPIのキーを記入します。
たったこれだけのコードでYouTubeチャンネルの情報を取得することができます😏
他にもチャンネルを検索したり、チャンネルが公開している動画の情報を取得したりと、APIを経由してYouTubeのデータを簡単に取得することができます。⭕️

今回は、単純にYouTube Data APIでチャンネル情報を表示させてみたというシンプルな内容です。もっとAPIを利用していろいろなことができるのですが、今回の記事ではさわりの部分だけ。
期待してみて頂いた方には、あまり役に立たない情報でゴメンなさい。

よかったら、気軽にフォローしていただけると嬉しいです!!