僕は2023年末からYouTube Data APIの活用に取り組んでいて、YouTube動画をより探しやすくするWebページの作成に取り組んできました。YouTube Data APIを利用するにあたって、色々なWeb記事を参考にしましたが、有益な情報が得られる記事が少ないと思ったので、自分でも解説記事を書くことにしました。コンピュータ・プログラミングの技術の話にはなりますが、なるべく初心者にわかりやすい内容にして、YouTube Data APIを使ってこんなことやってみたいと思った人が実際にプログラミングに挑戦するための手助けになるような記事を目指します。
この記事は数回に分けた記事として、後半ではExcel VBAを使ったサンプルプログラムも紹介します。
YouTube Data API とは
YouTube Data APIとはGoogleが提供しているAPIのひとつで、YouTube関連のAPIでは、YouTube Analytics APIなどがあるのですが、それらはYouTube動画の提供者や専門的な分析を行う人向けのAPIなので、この記事ではYouTube Data APIに絞って紹介していきます。
そもそもAPIとは何かを説明すると、「コンピュータ・プログラムが利用しやすい形式で、YouTubeにリクエストを行うと、YouTubeがコンピュータ・プログラムが利用しやすい形式のデータで、リクエストした情報を応答してくれるもの」となります。例えば、チャットGPTの場合は人間の文章でリクエストを行うと、人間がわかる文章で応答してくれますが、APIでの情報のやりとりは、コンピュータ・プログラムが利用しやすい形式でチャットGPTとのやり取りと同じようなことをするものと考えるとわかりやすいと思います。
コンピュータ・プログラムが利用しやすい形式のデータでYouTubeとやり取りすることで何がうれしいかというと、「プログラミングを行うことで、短時間に大量のリクエストを行い、大量の情報を得ることができる」ということになります。例えば数百個の動画コンテンツのあるYouTubeチャンネルのすべての動画の「タイトル」「概要欄」「公開日」「収録時間」などのデータを得たいとした場合、人間がYouTubeチャンネルを開いて手作業でやると途方もない時間がかかりますが、YouTube Data APIを利用するプログラムを作って実行すれば、数百個の動画の情報を瞬時に得ることができます。このように、YouTubeに関する情報を人間が手作業で行うよりもはるかに効率的に得られることができるのがYouTube Data APIを利用するメリットとなります。
YouTube Data API 活用事例
ここまで説明してきて、ほとんどのYouTube Data APIの解説記事はAPI仕様の話や利用するための環境設定の話に進むのですが、僕の記事では、ここで活用事例を紹介します。なぜかというと、僕はネット上の解説記事で、YouTube Data APIの実用的な活用事例を見たことがないからです。YouTube Data APIで何ができるかを考えたときに、実用的な活用方法をイメージできないと好奇心旺盛な人以外は、いくらYouTube Data APIの使い方を解説されても使ってみようとは思わないのではないかと思います。なので、ここからは僕が実際にYouTube Data APIを使ってWeb記事を作成した話を書きます。
活用事例1 番組形式動画の一覧作成
女性アイドルのハロープロジェクトのチャンネル「ハロ!ステ」では毎週番組形式の動画が公開されているのですが、これがもう500本以上の数になっていて、過去に見た動画から見たい場面を探したり、見逃した映像がないかチェックするのがかなり面倒な状況になっています。そこで、過去の動画を探しやすくするために、動画のサムネとタイトルと概要欄からタイムチャプターを抜き出して一覧化したWeb記事を作成しました。
上記の記事は#501以降のもので、さすがに数が多いので動画100個毎に記事を分けています。
これらの記事により、例えば僕の推しメンの田代すみれちゃんが料理に挑戦したのはどの回だったっけと探すときに難なく#523と#524だと見つけることができて、かつタイムチャプターのリンクからすぐ見たい場面に飛ぶことができます。また、この一覧をテキトーに眺めているだけで「あれ?この動画は見てなかった、知らなかった」といった動画を見つけることができます。
これらの記事は以下のプロセスで作成しました。
- 「ハロ!ステ」のYouTubeページからすべてのvideoID(動画を識別するID)を抽出する
- すべてのvideoIDについてYouTube APIを使用して、タイトル、概要欄などの情報を取得し、Excelシートで一覧化する
- Excelで一覧化した情報をもとに、HTML形式のファイルを作成する
上記の1,2については、今後の連載で具体的に説明しますが、ここまではとても簡単にできます。Excelシートの一覧を作るだけでも個人的にかなり便利に使えるはずです。まあ、3,のようにWebページ化する際には、見やすくする工夫が必要なわけで、この点は僕もどういう形式が見やすいのか考えながら何度か作り直していたりしていて、まだまだ改善の余地がありそうと思っています。
しかし、ここまで作れるようになれば、同様の番組形式のチャンネルも同じように作れるわけで、僕は以下のチャンネルの一覧記事も作成しました。これらも「ハロ!ステ」の一覧記事と同様に便利に使っています。
M-line Music YouTube動画一覧 #101-
M-line Music YouTube動画一覧 #01-100
こんな感じで、手作業でやったら膨大な時間がかかってしまう動画一覧作成がYouTube Data APIの活用でできるといった事例でした。
活用事例2 動画の更新も簡単
上記のようなYouTube動画の一覧記事を作成した場合、動画が追加されるたびに更新が必要なわけですが、そんな更新作業もYouTube Data APIの活用で簡単にできます。僕は記事更新を以下のようなプロセスで行っています。
- ExcelシートにYoutubeチャンネル毎にチャンネルIDと最終更新日付の一覧を作成する
- チャンネル毎にYouTube Data APIで最終更新日付以降に作成された動画があるかを問い合わせる
- 更新があった場合、Excelの動画一覧に追加し、最終更新日付を更新する。さらに追加された動画の情報をHTML形式に編集したファイルを作成する
このプロセスをExcel VBAでプログラミングしているので、僕はボタン1個押すだけで動画の更新有無の確認と、更新があった時の更新用ファイルが作成できて、あとはそれをWeb記事に貼り付けるだけなので何の苦もなくWeb記事を更新することができています。YouTube Data APIでの具体的な問い合わせ方法は先々の連載で説明します。
活用事例3 複数のチャンネルから動画を抽出して一覧化する
僕は上記のチャンネル以外のハロプロ関連チャンネルについても画像情報を抽出してExcelシートで一覧化しています。その全シートをキーワード検索して、ヒットした動画の一覧を作るというのも、Excel VBAで割と簡単にできます。その一例をして、以下の記事を示します。
この記事は、Excelシートに一覧化したハロプロ関連チャンネルについて、「タイトル」と「概要欄」について、「田代すみれ」でキーワード検索して動画を抽出したものになります。推しメンの田代すみれちゃんのオーディション当時から最近の動画まで一つの記事で探すことができるので、とても便利に使っています。
また、キーワード検索していて、タイトルが「OCHA NORMA 石栗奏美・西﨑美空バースデーイベント2023」のものがヒットして、なんでだろうと思って概要欄見たら「西﨑美空17歳の初めてのBDイベントを開催。MCとして田代すみれも登場。」とあり、動画見たらしっかり田代すみれちゃんが登場していました。このように、概要欄までくまなく見ないと気が付けないことが気が付けるのは何気に大きいと思います。
また、キーワード検索だと「田代すみれ欠席」と概要欄に書かれていたOCHA NORMAのライブ動画を抽出してしまったので、この動画を削除する作業が必要でした。また、「ハロ!ステ」#541では「自撮りが上手いメンバー」の第1位に田代すみれちゃんが選ばれて動画に出演していたものの、概要欄にはこのことが書かれていなかったので、自分でExcelシートの概要欄に追記して、キーワード検索で抽出されるようにしました。
キーワード検索による動画一覧作成は結構簡単にできたので、調子に乗ってハロプロメンバー全員の動画一覧を作ろうかと思ったのですが、上記のような抽出の微調整をやるにはかなりの情熱と愛情が必要なので、全員作成するのはやめました。それでも、下記のかなりのメンバーについて動画一覧作成記事を作成しました。
島倉りか(BEYOOOOONDS/CHICA#TETSU)が見れる動画一覧
岡村美波(BEYOOOOONDS/雨ノ森 川海)が見れる動画一覧
まとめ
以上見てきたように、僕が取り組んだ事例は、見たいYouTube動画を探しやすくするために、個々の動画チャンネルの全動画の情報をYouTube Data APIで取得し、動画を探しやすくする一覧のWeb記事を作ることでした。ハロプロのチャンネルの事例だったので、ハロプロに興味がない人にはピンとこなかったと思いますが、そうした方は自身の興味のあるチャンネルに置き換えてみるとわかりやすいかと思います。今回は事例に出しませんでした僕は洋楽ロック関連のチャンネルでも同様の取り組みを行っています。
僕は常々YouTubeの検索機能、おすすめ機能に不満を持っていて、これらの機能に頼っていては本当に自分が見たい動画にたどり着けないと思っています。そのため、YouTube Data APIで大量の動画情報を取得して、YouTube動画探しの補助となるようなWebページを作成するのは有効な手段だと思っています。なので、多くの人がYouTube Data APIを使ったアイディアを出し合って、動画探しに有効な方策が広がれば、YouTubeはよりもっと楽しめるものになるのではないかと思っています。
次回はYouTube Data APIの利用方法について具体的に説明します。
コメント