我正在使用YouTube API檢索視頻,但我想排除使用默認(灰色)圖像作爲縮略圖的結果。作爲上傳者沒有選擇縮略圖嗎?如何檢測YouTube視頻是否沒有縮略圖並僅使用默認圖像?
什麼是最好的方法來做到這一點?因爲我認爲數據中沒有標誌可以反映這一點。
我使用的YouTube的API的V3。
謝謝。
我正在使用YouTube API檢索視頻,但我想排除使用默認(灰色)圖像作爲縮略圖的結果。作爲上傳者沒有選擇縮略圖嗎?如何檢測YouTube視頻是否沒有縮略圖並僅使用默認圖像?
什麼是最好的方法來做到這一點?因爲我認爲數據中沒有標誌可以反映這一點。
我使用的YouTube的API的V3。
謝謝。
在最近的一個項目中,我發現了一個黑客但有用的方法來從YouTube API獲取每個視頻的相關縮略圖。
在每個視頻記錄返回的縮略圖中,看起來JSON中的第四個縮略圖可靠地是視頻的識別幀。
下面,在我的fetch_movie_history方法中,我將第四個電影縮略圖的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
這是一個例子截圖我我的網頁上使用的縮略圖(造型前):
底部的描述是從API返回的錄像,所以你可以看到它與縮略圖很好地匹配。
希望這會有所幫助!祝你好運。
感謝您的信息,我找到了另一種解決方案。我實現了一個節點服務來讀取圖像頭,並將大小與「無圖像」圖像的大小進行比較,從而在從我的數據庫中找到記錄時刪除記錄。 –
我找到了另一種解決方案。我實現了一個節點服務來讀取圖像頭,並將大小與「無圖像」圖像的大小進行比較,從而在從我的數據庫中找到記錄時刪除記錄。
聽起來很棒。你能分享代碼嗎? –
看起來帶有「灰色」圖片的視頻不再存在於YouTube上,因某種原因被刪除,版權或所有者將其刪除。 –
沒有辦法檢查我所知道的視頻的狀態。您將不得不再次運行搜索,以查看是否不再返回視頻。有沒有檢查狀態的方法? –