🦔
Youtube Data API + Rubyで動画を検索する
前提
Google Cloud Console でYoutube Data APIの認証情報をあらかじめ払い出しておく。
コード
古い情報だと google-api-client
を使っているケースが多いが廃止予定なので google-apis-youtube_v3
を使う。
認証情報は YOUTUBE_API_KEY
として .env
に書いて、 direnv allow
で環境変数に反映する。
Gemfile
gem 'google-apis-youtube_v3'
require 'google/apis/youtube_v3'
service = Google::Apis::YoutubeV3::YouTubeService.new
service.key = ENV['YOUTUBE_API_KEY']
res = service.list_searches('id,snippet', q: '柴犬', type: 'video')
res.items.each do |item|
puts [
item.id.video_id,
"https://www.youtube.com/watch?v=#{item.id.video_id}",
item.snippet.title,
item.snippet.description,
item.snippet.thumbnails.default.url,
].join(',')
end
- part
- 取得するリソース
- ここでは
id,snippet
を指定
- q
- 検索キーワード
- type
- コンテンツの種別(channel, video, playlist)
詳細については Youtube Data API リファレンス を参照。
実行結果
wo0R6HkDVfs,https://www.youtube.com/watch?v=wo0R6HkDVfs,仕事復帰の母へ、超絶可愛い癒しパワーを送る柴犬,柴犬#家族#可愛い#サモエド Tiktok【しばわんこ生活】はこちら https://www.tiktok.com/@shibawankoseikatu?lang=ja-JP 2ed【 ...,https://i.ytimg.com/vi/wo0R6HkDVfs/default.jpg
smcdaUlwfWw,https://www.youtube.com/watch?v=smcdaUlwfWw,可愛すぎて困っちゃいます🥰 #shorts #柴犬 #犬 #dog,,https://i.ytimg.com/vi/smcdaUlwfWw/default.jpg
8JVkwv907WI,https://www.youtube.com/watch?v=8JVkwv907WI,うちの柴犬は16歳でヨボヨボだけどある日リードを持ってきて…【2ch感動】,,https://i.ytimg.com/vi/8JVkwv907WI/default.jpg
d6m8yY_k3ME,https://www.youtube.com/watch?v=d6m8yY_k3ME,#高速道路 を逃走する #柴犬 を「御用」 #GW の #第三京浜 で 捕物劇 #毎日新聞 #shorts,大型連休前半の29日、神奈川県の高速道路上を走り回った柴犬が、逃走劇の末に警察に捕まった。行楽に出向くドライバーらも ...,https://i.ytimg.com/vi/d6m8yY_k3ME/default.jpg
Discussion