YouTube APIを使う前に読んでほしい!:初心者向け

◆ Live配信スケジュール ◆
サイオステクノロジーでは、Microsoft MVPの武井による「わかりみの深いシリーズ」など、定期的なLive配信を行っています。
⇒ 詳細スケジュールはこちらから
⇒ 見逃してしまった方はYoutubeチャンネルをご覧ください
【6/19開催】Kong Community Japan Meetup #4
本イベントでは、Kong Inc. のVP of ProductであるReza Shafii氏もプレゼンターとして参加。当社からはアーキテクト マネージャーの槌野の登壇が決定!参加無料です!!
https://column.api-ecosystem.sios.jp/connect/kong/1081/

【6/21開催】開発者目線でのSBOMとの向き合い方
SBOMの導入から開発者がSBOMの作成・管理を自動で行っていくための方法(デモ)を紹介します。SBOMを全く知らない人から、開発との統合までを紹介するので様々なレベルの方に学びがあるライブとなる予定です!
https://tech-lab.connpass.com/event/321422/

【7/19開催】現場で役立つAzure神小技10+α 〜生成AI,RAG,コスト削減など旬な技術満載のLT大会〜
Azureの最新技術や実用的な小技を紹介する特別なライトニングトーク大会を開催します!
https://tech-lab.connpass.com/event/319077/

【7/26開催】最適なIaCツールを選ぼう
プロジェクトでのツール選びに困らないための重要な観点をご説明します!
https://tech-lab.connpass.com/event/319532/

ども!今回はYouTube APIを使おうとしている、入門者の方に向けて入れてほしい前提知識について記事にしてみました。YouTube APIとAnalytics and Reporting APIsの二つがあって、組み合わせることであなたの要望が叶えることができるかもしれません。逆説的に、組み合わせ必須かも?

ご挨拶

どもども!プロジェクト外にもちょこちょこ仕事をしている龍ちゃんです。仕事のタイプにもいろいろなものがあります。最近、勉強会の登壇もしているのでその準備もドタバタしています。

今回は、プロジェクト外の仕事で仕入れた知識の放出になります。社内の人のためにプチプロダクト開発を行っていました。プチプロダクトが、三つぐらいは知っていたので実際はプロジェクトぐらいの重さがありますね。新しいことも知れるので、非常に勉強になりました。

さて、本題のために助走をつけていきましょう。今回取り扱うのは、YouTube APIになります。この記事は、前提条件という側面が強いです。具体的にコーディングの部分までは入っていきません。その点はご留意ください。

この記事を通して知ってほしいことは以下になります。

  • YouTube APIには大きく分けて2つあり、それぞれ担当する分野がある
  • Google のサービスとの連携はGoogle Apps Script(GAS)が一番楽

そんなこんなでぬるっと本編です。

YouTube APIについて

上のほうでもさっくりと書いているのですが、YouTube APIには「YouTube Data API」と「YouTube Aalytics and Reporting APIs」があります。名前からなんとなく切り分けがわかりそうですね。

YouTube Data API
YouTube内のコンテンツにアクセスするためのAPI
検索結果やチャンネルや動画の情報などにアクセスすることができる
自分が所有していない動画も検索対象にできる  YouTube Analytics and Reporting APIs
YouTube内のコンテンツに対するアクセス情報にアクセスするためのAPI
視聴回数、評価、視聴ユーザーの地域や年代など分析に必要な情報が得られる
自分が所有している動画に対してのみ実行可能

簡単に切り分けるなら、以下になります。

  • 動画のタイトル・投稿日といった動画に対する属性情報
  • 特定期間における動画の統計情報(視聴回数・視聴時間・地域・年代 etc…)

これでイメージがわかりやすくなればうれしいです。これの厄介なところについて話していきたいと思います。「YouTube Aalytics and Reporting APIs」の統計情報取得部分です。特定の動画を指定して、統計情報を取得することができますが、「特定の動画」を指定する部分は「YouTube Data API」経由で取得する必要があります。「YouTube Aalytics and Reporting APIs」だけで取得する場合は、視聴回数上位の動画の統計情報というざっくりとした取り方しかできません。

例えば以下のシナリオがあるとします。

自分が所有しているすべての動画が、先月だけでどれだけ再生されたか知りたい

このシナリオをかなえるためには、「自分が所有しているすべての動画」を取得して、その動画が「先月だけでどれだけ再生されたか」を検索する必要があります。

このシナリオをかなえるためには、「自分が所有しているすべての動画」を取得して、その動画が「先月だけでどれだけ再生されたか」を検索する必要があります。

一つのシナリオをかなえるために、二つのAPIを組み合わせて実行しなければならないのです。先ほども言いましたがIDだけが紐づけられています。動画のタイトルや投稿日を取得するためには「YouTube Data API」が必要になります。

ちなみに厄介と言っていますが、公式のリファレンスにはしっかりと書いてあります。読まない人が悪いのですが、ハードルが高いのもわかります。僕もリファレンスを泣きながら読んで、1%ぐらい理解しました。

Google サービスとの連携はGASが良い

ここでは、「YouTube API を使用して作業したいときはGoogle Apps Script(GAS)が良い」というお話を強めに書いていこうと思います。利点としては以下になります。

  • OAuth周りの設定を明示的にやらなくてよい(GCPを経由しなくてよい)
  • 公式がサンプルを用意してくれている

やはり、どちらも提供元がGoogleという利点もあります。YouTube APIを使用する場合は、権限を付与する必要があります。GASを使用すると、必要な権限を設定して認証画面を生成してくれます。

ちゃんとつながっているので、サンプルも充実しています。

このサンプルを見つけるだけでも、APIに対する理解が進むと思います。

おわりに

お疲れ様です。今回は、YouTube APIを使う前の前提知識としての資料をイメージして記事を作成しました。やりたいことの内容としては、YouTube Studioで見れる情報を取るだけなのです。アカウントを共有せずに、統計情報だけをスタックしたいという要望はレアだと思います。Google AnalyticsもYouTube Studioも高機能なので、特別な要望がなければ公式のものを使うことをお勧めします。

レアな要望を頑張って実現するのもエンジニアの醍醐味かもしれません。これからもニッチな需要を攻めていきたいです。ニッチなサンプルを作ったらブログで報告していきますね。

ではまた~

アバター画像
About 龍:Ryu 109 Articles
2022年入社で主にフロントエンドの業務でTailwindと遊ぶ日々。お酒とうまいご飯が好きで、運動がちょっと嫌いなエンジニアです。しゃべれるエンジニアを目指しておしゃべりとブログ執筆に注力中(業務もね)//
ご覧いただきありがとうございます! この投稿はお役に立ちましたか?

役に立った 役に立たなかった

2人がこの投稿は役に立ったと言っています。


ご覧いただきありがとうございます。
ブログの最新情報はSNSでも発信しております。
ぜひTwitterのフォロー&Facebookページにいいねをお願い致します!



>> 雑誌等の執筆依頼を受付しております。
   ご希望の方はお気軽にお問い合わせください!

Be the first to comment

Leave a Reply

Your email address will not be published.


*


質問はこちら 閉じる