Upgrade yt_dlp and download script

This commit is contained in:
2025-05-02 16:11:08 -05:00
parent 3a2e8eeb08
commit d68d9ce4f9
1194 changed files with 60099 additions and 44436 deletions

View File

@@ -77,9 +77,8 @@ class _MatchChildParser(_MatchParser):
class ParseError(Exception):
def __init__(self, parser):
super().__init__("Parse error at position %u (near %r)" % (
parser._pos, parser._data[parser._pos:parser._pos + 20]
))
data = parser._data[parser._pos:parser._pos + 100]
super().__init__(f'Parse error at position {parser._pos} (near {data!r})')
# While the specification <https://www.w3.org/TR/webvtt1/#webvtt-timestamp>
@@ -95,6 +94,7 @@ _REGEX_TS = re.compile(r'''(?x)
_REGEX_EOF = re.compile(r'\Z')
_REGEX_NL = re.compile(r'(?:\r\n|[\r\n]|$)')
_REGEX_BLANK = re.compile(r'(?:\r\n|[\r\n])+')
_REGEX_OPTIONAL_WHITESPACE = re.compile(r'[ \t]*')
def _parse_ts(ts):
@@ -148,7 +148,7 @@ class Magic(HeaderBlock):
# XXX: The X-TIMESTAMP-MAP extension is described in RFC 8216 §3.5
# <https://tools.ietf.org/html/rfc8216#section-3.5>, but the RFC
# doesnt specify the exact grammar nor where in the WebVTT
# doesn't specify the exact grammar nor where in the WebVTT
# syntax it should be placed; the below has been devised based
# on usage in the wild
#
@@ -272,10 +272,10 @@ class CueBlock(Block):
def parse(cls, parser):
parser = parser.child()
id = None
id_ = None
m = parser.consume(cls._REGEX_ID)
if m:
id = m.group(1)
id_ = m.group(1)
m0 = parser.consume(_REGEX_TS)
if not m0:
@@ -286,6 +286,7 @@ class CueBlock(Block):
if not m1:
return None
m2 = parser.consume(cls._REGEX_SETTINGS)
parser.consume(_REGEX_OPTIONAL_WHITESPACE)
if not parser.consume(_REGEX_NL):
return None
@@ -302,9 +303,9 @@ class CueBlock(Block):
parser.commit()
return cls(
id=id,
id=id_,
start=start, end=end, settings=settings,
text=text.getvalue()
text=text.getvalue(),
)
def write_into(self, stream):
@@ -341,7 +342,7 @@ class CueBlock(Block):
start=json['start'],
end=json['end'],
text=json['text'],
settings=json['settings']
settings=json['settings'],
)
def hinges(self, other):