From 42a8ae2e9ffb9b479eb8277e82c6ace546df7a04 Mon Sep 17 00:00:00 2001 From: Simon Date: Fri, 11 Jul 2025 19:53:48 +0700 Subject: [PATCH] add fallback thumb for queue, add ta_download to thumb validator --- backend/download/src/queue.py | 3 +++ backend/download/src/thumbnails.py | 9 ++++++++- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/backend/download/src/queue.py b/backend/download/src/queue.py index a35b985b..acf679cb 100644 --- a/backend/download/src/queue.py +++ b/backend/download/src/queue.py @@ -359,6 +359,9 @@ class PendingList(PendingIndex): if "thumbnail" in video_data: return video_data["thumbnail"] + if video_data.get("thumbnails"): + return video_data["thumbnails"][-1]["url"] + return None def __extract_published(self, video_data) -> str | int | None: diff --git a/backend/download/src/thumbnails.py b/backend/download/src/thumbnails.py index 50af3887..2d9d4739 100644 --- a/backend/download/src/thumbnails.py +++ b/backend/download/src/thumbnails.py @@ -265,7 +265,7 @@ class ValidatorCallback: def run(self): """run the task for page""" print(f"{self.index_name}: validate artwork") - if self.index_name == "ta_video": + if self.index_name in ["ta_video", "ta_download"]: self._validate_videos() elif self.index_name == "ta_channel": self._validate_channels() @@ -325,6 +325,13 @@ class ThumbValidator: }, "name": "ta_playlist", }, + { + "data": { + "query": {"term": {"status": {"value": "pending"}}}, + "_source": ["youtube_id", "vid_thumb_url"], + }, + "name": "ta_download", + }, ] def __init__(self, task=False):