aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordirkf <fieldhouse@gmx.net>2025-09-28 07:03:16 +0100
committerdirkf <fieldhouse@gmx.net>2025-09-29 02:15:05 +0100
commitf2a774cb9d661b1f19df4ee0e91f402a15c4d413 (patch)
tree404b99995053c2c97d05b9a3718a99eee859f26f
parent92680b127f933e35327e071de2b4a5f2d67ec661 (diff)
[YouTube] Fix subtitles extraction
From yt-dlp/yt-dlp#13659, thx bashonly
-rw-r--r--youtube_dl/extractor/youtube.py8
1 files changed, 8 insertions, 0 deletions
diff --git a/youtube_dl/extractor/youtube.py b/youtube_dl/extractor/youtube.py
index 1aca69b93..1228dc8a3 100644
--- a/youtube_dl/extractor/youtube.py
+++ b/youtube_dl/extractor/youtube.py
@@ -2668,7 +2668,12 @@ class YoutubeIE(YoutubeBaseInfoExtractor):
self.raise_geo_restricted(
subreason, countries)
reason += '\n' + subreason
+
if reason:
+ if 'sign in' in reason.lower():
+ self.raise_login_required(remove_end(reason, 'This helps protect our community. Learn more'))
+ elif traverse_obj(playability_status, ('errorScreen', 'playerCaptchaViewModel', T(dict))):
+ reason += '. YouTube is requiring a captcha challenge before playback'
raise ExtractorError(reason, expected=True)
self._sort_formats(formats)
@@ -2771,6 +2776,9 @@ class YoutubeIE(YoutubeBaseInfoExtractor):
for fmt in self._SUBTITLE_FORMATS:
query.update({
'fmt': fmt,
+ # xosf=1 causes undesirable text position data for vtt, json3 & srv* subtitles
+ # See: https://github.com/yt-dlp/yt-dlp/issues/13654
+ 'xosf': []
})
lang_subs.append({
'ext': fmt,