From 94236a75fa7e21fa9020c65b8c65b60893d268c3 Mon Sep 17 00:00:00 2001 From: "Antonio J. Delgado" Date: Sun, 15 Jun 2025 22:33:30 +0200 Subject: [PATCH 1/5] download in 1080 --- get_youtube_videos/get_youtube_videos.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/get_youtube_videos/get_youtube_videos.py b/get_youtube_videos/get_youtube_videos.py index 22dad8c..dac34ed 100644 --- a/get_youtube_videos/get_youtube_videos.py +++ b/get_youtube_videos/get_youtube_videos.py @@ -303,7 +303,8 @@ class GetYoutubeVideos: 'allow_multiple_audio_streams': True, 'noprogress': True, 'merge_output_format': 'mkv', - 'format': 'bestvideo+bestaudio[ext=m4a]/best', + # 'format': 'bestvideo+bestaudio[ext=m4a]/best', + 'format': '248', # 'extractor_args': {'youtube': {'player-client': ['mweb']}} } if self.selected_proxy != '': From 74d99c85f0d3b960f263c7f084ef92f01140cd0f Mon Sep 17 00:00:00 2001 From: "Antonio J. Delgado" Date: Sun, 15 Jun 2025 22:38:38 +0200 Subject: [PATCH 2/5] restore best video --- get_youtube_videos/get_youtube_videos.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/get_youtube_videos/get_youtube_videos.py b/get_youtube_videos/get_youtube_videos.py index dac34ed..b6161be 100644 --- a/get_youtube_videos/get_youtube_videos.py +++ b/get_youtube_videos/get_youtube_videos.py @@ -303,8 +303,8 @@ class GetYoutubeVideos: 'allow_multiple_audio_streams': True, 'noprogress': True, 'merge_output_format': 'mkv', - # 'format': 'bestvideo+bestaudio[ext=m4a]/best', - 'format': '248', + 'format': 'bestvideo+bestaudio[ext=m4a]/best', + # 'format': '248', # 'extractor_args': {'youtube': {'player-client': ['mweb']}} } if self.selected_proxy != '': From 795a9d892deca284d16c2fa8724d1f0e5deaff58 Mon Sep 17 00:00:00 2001 From: "Antonio J. Delgado" Date: Sun, 15 Jun 2025 22:40:22 +0200 Subject: [PATCH 3/5] change to best audio and 1080p --- get_youtube_videos/get_youtube_videos.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/get_youtube_videos/get_youtube_videos.py b/get_youtube_videos/get_youtube_videos.py index b6161be..c0771a3 100644 --- a/get_youtube_videos/get_youtube_videos.py +++ b/get_youtube_videos/get_youtube_videos.py @@ -303,8 +303,8 @@ class GetYoutubeVideos: 'allow_multiple_audio_streams': True, 'noprogress': True, 'merge_output_format': 'mkv', - 'format': 'bestvideo+bestaudio[ext=m4a]/best', - # 'format': '248', + # 'format': 'bestvideo+bestaudio[ext=m4a]/best', + 'format': '248+ba', # 'extractor_args': {'youtube': {'player-client': ['mweb']}} } if self.selected_proxy != '': From c5ede0c21f403b09cfb79bce82d40577901a59ce Mon Sep 17 00:00:00 2001 From: "Antonio J. Delgado" Date: Fri, 20 Jun 2025 23:51:56 +0200 Subject: [PATCH 4/5] test for format error --- get_youtube_videos/get_youtube_videos.py | 39 +++++++++++++++++++----- 1 file changed, 32 insertions(+), 7 deletions(-) diff --git a/get_youtube_videos/get_youtube_videos.py b/get_youtube_videos/get_youtube_videos.py index c0771a3..8dfbb44 100644 --- a/get_youtube_videos/get_youtube_videos.py +++ b/get_youtube_videos/get_youtube_videos.py @@ -324,13 +324,38 @@ class GetYoutubeVideos: } ) except yt_dlp.utils.DownloadError as error: - self._log.error( - "Error getting video with proxy '%s'. %s", - self.selected_proxy, - error - ) - self.summary['videos_with_error'] += 1 - break + if 'Requested format is not available' in f"{error}": + ydl_opts['format'] = 'bestvideo+bestaudio[ext=m4a]/best' + with yt_dlp.YoutubeDL(ydl_opts) as ydl: + try: + uri=f"https://www.youtube.com/watch?v={video_id}" + return_code = ydl.download(uri) + self._process_download( + { + "return_code": return_code, + 'info_dict': { + 'id': video_id, + }, + 'filename': video_info.get('title', '?'), + 'video_info': video_info, + } + ) + except yt_dlp.utils.DownloadError as sub_error: + self._log.error( + "Error getting video with proxy '%s'. %s", + self.selected_proxy, + sub_error + ) + self.summary['videos_with_error'] += 1 + break + else: + self._log.error( + "Error getting video with proxy '%s'. %s", + self.selected_proxy, + error + ) + self.summary['videos_with_error'] += 1 + break self.summary['downloaded_videos_titles'].append(video_info.get('title', '?')) self.summary['downloaded_videos'] += 1 else: From fffcc743af6f392e89aef0aba3d18086860ca46a Mon Sep 17 00:00:00 2001 From: "Antonio J. Delgado" Date: Fri, 20 Jun 2025 23:54:42 +0200 Subject: [PATCH 5/5] add log info --- get_youtube_videos/get_youtube_videos.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/get_youtube_videos/get_youtube_videos.py b/get_youtube_videos/get_youtube_videos.py index 8dfbb44..223116a 100644 --- a/get_youtube_videos/get_youtube_videos.py +++ b/get_youtube_videos/get_youtube_videos.py @@ -325,6 +325,9 @@ class GetYoutubeVideos: ) except yt_dlp.utils.DownloadError as error: if 'Requested format is not available' in f"{error}": + self._log.warning( + f"Requested format is not available, trying best format." + ) ydl_opts['format'] = 'bestvideo+bestaudio[ext=m4a]/best' with yt_dlp.YoutubeDL(ydl_opts) as ydl: try: