mirror of https://github.com/yt-dlp/yt-dlp.git
[ie/youtube] Fix `n` function name extraction for player `3400486c` (#10542)
Authored by: bashonly
This commit is contained in:
parent
a3bab4752a
commit
713b4cd18f
|
@ -171,6 +171,10 @@ _NSIG_TESTS = [
|
||||||
'https://www.youtube.com/s/player/b22ef6e7/player_ias.vflset/en_US/base.js',
|
'https://www.youtube.com/s/player/b22ef6e7/player_ias.vflset/en_US/base.js',
|
||||||
'b6HcntHGkvBLk_FRf', 'kNPW6A7FyP2l8A',
|
'b6HcntHGkvBLk_FRf', 'kNPW6A7FyP2l8A',
|
||||||
),
|
),
|
||||||
|
(
|
||||||
|
'https://www.youtube.com/s/player/3400486c/player_ias.vflset/en_US/base.js',
|
||||||
|
'lL46g3XifCKUZn1Xfw', 'z767lhet6V2Skl',
|
||||||
|
),
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -3131,7 +3131,14 @@ class YoutubeIE(YoutubeBaseInfoExtractor):
|
||||||
|
|
||||||
def _extract_n_function_name(self, jscode):
|
def _extract_n_function_name(self, jscode):
|
||||||
funcname, idx = self._search_regex(
|
funcname, idx = self._search_regex(
|
||||||
r'''(?x)(?:\.get\("n"\)\)&&\(b=|b=String\.fromCharCode\(110\),c=a\.get\(b\)\)&&\(c=)
|
r'''(?x)
|
||||||
|
(?:
|
||||||
|
\.get\("n"\)\)&&\(b=|
|
||||||
|
(?:
|
||||||
|
b=String\.fromCharCode\(110\)|
|
||||||
|
([a-zA-Z0-9$.]+)&&\(b="nn"\[\+\1\]
|
||||||
|
),c=a\.get\(b\)\)&&\(c=
|
||||||
|
)
|
||||||
(?P<nfunc>[a-zA-Z0-9$]+)(?:\[(?P<idx>\d+)\])?\([a-zA-Z0-9]\)''',
|
(?P<nfunc>[a-zA-Z0-9$]+)(?:\[(?P<idx>\d+)\])?\([a-zA-Z0-9]\)''',
|
||||||
jscode, 'Initial JS player n function name', group=('nfunc', 'idx'))
|
jscode, 'Initial JS player n function name', group=('nfunc', 'idx'))
|
||||||
if not idx:
|
if not idx:
|
||||||
|
|
Loading…
Reference in New Issue