commit: ae7ed92057dcb7b9b582416d6dcf584843eca460
parent e45b31d9bd824b01142d52b0de0d6823a49b2af6
Author: Philipp Hagemeister <phihag@phihag.de>
Date: Mon, 10 Mar 2014 13:35:40 +0100
[youtube] Fix up invalid JSON
Diffstat:
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/youtube_dl/extractor/youtube.py b/youtube_dl/extractor/youtube.py
@@ -1285,10 +1285,11 @@ class YoutubeIE(YoutubeBaseInfoExtractor, SubtitlesInfoExtractor):
# Decide which formats to download
try:
- mobj = re.search(r';ytplayer.config = ({.*?});', video_webpage)
+ mobj = re.search(r';ytplayer\.config\s*=\s*({.*?});', video_webpage)
if not mobj:
raise ValueError('Could not find vevo ID')
- ytplayer_config = json.loads(mobj.group(1))
+ json_code = uppercase_escape(mobj.group(1))
+ ytplayer_config = json.loads(json_code)
args = ytplayer_config['args']
# Easy way to know if the 's' value is in url_encoded_fmt_stream_map
# this signatures are encrypted