commit 77ffa957010fb7fe19433633223317d1147dd080
parent 2b25cb5d7693b62736d4cdfa656289cc429c4c81
Author: Philipp Hagemeister <phihag@phihag.de>
Date: Sun, 30 Mar 2014 07:15:14 +0200
[jsinterp] Better error messages
Diffstat:
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git 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<args>[a-z,]+)\){(?P<code>[^}]+)}',
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):