From f7a211dcc8d86fe5a4d25f4d209ffb3efc05bdfc Mon Sep 17 00:00:00 2001 From: Philipp Hagemeister Date: Tue, 10 Feb 2015 03:41:31 +0100 Subject: [PATCH] [pornhd] Fix extraction (fixes #4915) --- youtube_dl/extractor/pornhd.py | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/youtube_dl/extractor/pornhd.py b/youtube_dl/extractor/pornhd.py index 954dfccb7..dbb2c3bd9 100644 --- a/youtube_dl/extractor/pornhd.py +++ b/youtube_dl/extractor/pornhd.py @@ -46,16 +46,17 @@ def _real_extract(self, url): quality = qualities(['sd', 'hd']) sources = json.loads(js_to_json(self._search_regex( - r"(?s)'sources'\s*:\s*(\{.+?\})\s*\}\);", webpage, 'sources'))) + r"(?s)'sources'\s*:\s*(\{.+?\})\s*\}[;,)]", + webpage, 'sources'))) formats = [] - for container, s in sources.items(): - for qname, video_url in s.items(): - formats.append({ - 'url': video_url, - 'container': container, - 'format_id': '%s-%s' % (container, qname), - 'quality': quality(qname), - }) + for qname, video_url in sources.items(): + if not video_url: + continue + formats.append({ + 'url': video_url, + 'format_id': qname, + 'quality': quality(qname), + }) self._sort_formats(formats) return {