X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=youtube_dl%2Fjsinterp.py;h=449482d3cf8dd147c62717ebc3332bbcbf6eb869;hb=3b1dfc0f2f49117c30fab8aef45993ecf99256c2;hp=129a4027bd044b4dddec281f9386a4639c1ca39f;hpb=2b25cb5d7693b62736d4cdfa656289cc429c4c81;p=youtube-dl diff --git a/youtube_dl/jsinterp.py b/youtube_dl/jsinterp.py index 129a4027b..449482d3c 100644 --- a/youtube_dl/jsinterp.py +++ b/youtube_dl/jsinterp.py @@ -99,9 +99,12 @@ class JSInterpreter(object): def extract_function(self, funcname): func_m = re.search( - r'function ' + re.escape(funcname) + + (r'(?:function %s|%s\s*=\s*function)' % ( + re.escape(funcname), re.escape(funcname))) + r'\((?P[a-z,]+)\){(?P[^}]+)}', self.code) + if func_m is None: + raise ExtractorError('Could not find JS function %r' % funcname) argnames = func_m.group('args').split(',') def resf(args):