Upgrade yt_dlp and download script
This commit is contained in:
@@ -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
|
||||
# doesn’t 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):
|
||||
|
Reference in New Issue
Block a user