読者です 読者をやめる 読者になる 読者になる

ゆとりエンジニア

大学生です。成長できないエンジニア。

Youtubeのコメントを取得する

映画のPVとそのコメントを見れるwebサービスがあったら便利そうだなと思ったので作ってみた。

Decopon 映画の予告映像とあらすじ

その時にyoutubeAPIを叩いてコメントを取得するのに時間がかかったのでまとめておく。

使い方は超簡単だった。 app-keyを取得してきて、それを引数にwww.googleapis.com/youtube/v3/commentThreadsを使うだけ。 もっと欲しい情報があるならドキュメントにあるような引数を追加すればいい。

def self.youtube_comment(youtube_id)
  response = Faraday.get "https://www.googleapis.com/youtube/v3/commentThreads?key=#{app_key}&textFormat=plainText&part=snippet&videoId=#{youtube_id}&maxResults=50"
  result = []
  items = JSON.parse(response.body)["items"]
  items.each do |item|
    comment = {}
    item = item["snippet"]["topLevelComment"]["snippet"]
    comment[:text] = item["textDisplay"]
    comment[:user_image] = item["authorProfileImageUrl"]
    comment[:user_name] = item["authorDisplayName"]
    comment[:created_at] = DateTime.parse(item["updatedAt"])
    result << comment
  end
end

というわけで完成したのがこちら Decopon 映画の予告映像とあらすじ