YouTubeAPIで自分の動画一覧情報を取得するプログラムを書いてみた

私のYouTubeチャンネルはPocketalkなどの音声翻訳機が、どれぐらい実用的に使えるかというのを、日本語、英語、ポルトガル語やタイ語といった各言語で検証している動画を上げています。

いくつかの動画は海外の人向けに英語で紹介してみたところ、先月はハンガリーの技術系サイトにて紹介いただきちょっとしたバズの恩恵を受けることができました。

Tech Ez a kis kütyü egy profi tolmácsgép 74 nyelven beszél és még az élőbeszédet is lefordítja  HVG hu 2019 02 09 19 37 17

Tech: Ez a kis kütyü egy profi tolmácsgép, 74 nyelven beszél, és még az élőbeszédet is lefordítja – HVG.hu

今後も海外の人から自分の動画が紹介してもらえるチャンスを高めるため、音声翻訳関連の動画の一覧をつくることにしました。

一覧には、説明に使っている言語が何か?翻訳検証している言語か何か?を表しています。

目次

音声翻訳機の動画を一覧で言語表記しているページ

Travis 音声翻訳機検証動画一覧 | なかちょんブログ 2019 02 09 19 41 06

Check Speech Translator Test Video List Pocketalk/ili/Travis 音声翻訳機検証動画一覧 | なかちょんブログ

出来上がったのが上記で、WordPressの固定ページで作っています。

当初、自分のYouTubeの管理ページからひとつづつリンクとタイトルを抜き出してエクセルで表にしようかとおもったのですがやっぱり面倒くさいですよね。

たしかYouTubeのAPIを使えばチャンネルの動画情報をとれたはずなので、今後もこういうケースはあるだろうから、API使ってやってみることにしました。

YouTubeAPI V3で自分のチャンネルの動画を表示させる方法 | なかちょんブログ

YouTube Data API V3を使って動画の情報を取得する方法

2014年に自分でYouTube APIを試した試した時はYouTube全体からキーワードで動画を取得する方法でした。

YouTubeAPI V3で自分のチャンネルの動画を表示させる方法 (2014年)| なかちょんブログ

今回は自分のチャンネルの動画ですが、それほど大きくAPIの仕様は変更されていない感じ。

Search: list  |  YouTube Data API (v3)  |  Google Developers

まずはググって情報収集。下記のサイトを参考にさせていただきました。

Youtube API V3でユーザーがアップロードした動画リストを取得する方法 [無料ホームページ作成クラウドサービス まめわざ]

YouTubeの特定のチャンネルに紐付く動画を取得する。(YouTube Data API (v3) Search) – Qiita

で、@yuji_saitoさんのQiitaの記事は、仕様のとおり自分の動画を取得しようとしてもちゃんと取り切れない問題に対する解決方法(1ヶ月単位で取得する)が説明されており大変助かりました。ありがとうございます!

作成したプログラム(PHP)と結果

PHPでプログラムを作成しました。実行すると次のような表が表示されます。

YouTube APIで特定のチャンネルの動画を取得して表にする 2019 02 10 06 42 18

この表はHTMLのtableで作成されているので、このtable部分だけをhtmlで保存すると、エクセルで表として開き編集することができます。

ただし、画像をリンクで表示させているので、あまり動画の数が多いとエクセルがフリーズするのでご注意を。

本当は直接CSVファイルにしたほうが便利なのですが、とりあえずここまで。

かなり汚いコードでごめんなさい。ソースはgithubにあげておきますのでご自由に使ってください。

githubのリンク

まとめ

明石ガクトさんの本やイケダハヤトさんのチャンネル、5Gの話など、再度YouTubeの波がきているようです。

ただし、登録者数の少ないYouTubeチャンネルの動画の視聴回数はYouTubeのプラットフォームだけに頼るとなかなか上がることはりません。

なので、自分の動画の情報を自分なりにまとめて整理して、興味をもってもらえそうな人が、的確に自分の動画にアプローチできる方法を用意する必要があります。

それは手動でもできますが、YouTubeはAPIを公開しているので、単純作業はプログラムにまかせて、自分にしかできないことに時間を費やしたいものですよね。

あと、FacebookでYouTubeAPIを使いたい人&使っている人のグループつくってます。参加大歓迎!