mirror of
https://github.com/iv-org/invidious.git
synced 2026-07-08 22:56:47 -05:00
fix(extractors): skip lockupViewModel items missing collectionThumbnailViewModel
YouTube changed the thumbnail structure for some collection/playlist items. Use dig? and return nil to skip unparseable items instead of crashing.
This commit is contained in:
parent
5ad8fcfc4d
commit
2782facc94
@ -650,11 +650,13 @@ private module Parsers
|
|||||||
private def parse_internal(item_contents, author_fallback)
|
private def parse_internal(item_contents, author_fallback)
|
||||||
playlist_id = item_contents["contentId"].as_s
|
playlist_id = item_contents["contentId"].as_s
|
||||||
|
|
||||||
thumbnail_view_model = item_contents.dig(
|
thumbnail_view_model = item_contents.dig?(
|
||||||
"contentImage", "collectionThumbnailViewModel",
|
"contentImage", "collectionThumbnailViewModel",
|
||||||
"primaryThumbnail", "thumbnailViewModel"
|
"primaryThumbnail", "thumbnailViewModel"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
return nil if thumbnail_view_model.nil?
|
||||||
|
|
||||||
thumbnail = thumbnail_view_model.dig("image", "sources", 0, "url").as_s
|
thumbnail = thumbnail_view_model.dig("image", "sources", 0, "url").as_s
|
||||||
|
|
||||||
# This complicated sequences tries to extract the following data structure:
|
# This complicated sequences tries to extract the following data structure:
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user