2

YouTube API を使用して動画を取得していますが、デフォルト (灰色) の画像をサムネイルとして使用している結果を除外したいと考えています。アップローダーがサムネイルを選択しなかったということですか?

これを行うための最良の方法は何ですか?これを反映するフラグがデータにあるとは思わないので。

YouTube APIのv3を使用しています。

ありがとう。

4

2 に答える 2

0

最近のプロジェクトで、YouTube API から各動画に関連するサムネイルを取得するハックだが便利な方法を見つけました。

各ビデオ レコードが返すサムネイルのうち、JSON の 4 番目のサムネイルは確実にビデオの識別フレームであるように見えます。

以下の fetch_movie_history メソッドで、後で表示できるように、4 番目のムービー サムネイルの URL をムービー レコードに保存します。

def fetch_movie_history

  watch_history = self.youtube_client.watch_history
    watch_history.videos.each do |video|
      movie = Movie.find_or_create_by(unique_id: video.unique_id)
      movie.title = video.title
      movie.description = video.description
      movie.url = video.player_url
      movie.thumbnail = video.thumbnails[3].url
      movie.save
      self.movies << movie
    end
end

これは、私のページで使用したサムネイルのスクリーンショット (スタイリング前) の例です。

YouTube API JSON の 4 番目のレコードのサムネイルの例

下部の説明は、API によって返されたビデオ レコードからのものであるため、サムネイルとうまく一致していることがわかります。

お役に立てれば!幸運を祈ります。

于 2013-11-18T01:22:46.290 に答える