From 8ddf48d59f2d04b7411202eb6bf02c6eaa387035 Mon Sep 17 00:00:00 2001 From: Yen Chi Hsuan Date: Fri, 25 Sep 2015 17:48:51 +0800 Subject: [PATCH] [fktv] Raise an error is no videos found --- youtube_dl/extractor/fktv.py | 24 +++++++++++++----------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/youtube_dl/extractor/fktv.py b/youtube_dl/extractor/fktv.py index 93c4fd641..74c6cf866 100644 --- a/youtube_dl/extractor/fktv.py +++ b/youtube_dl/extractor/fktv.py @@ -6,6 +6,7 @@ from ..utils import ( clean_html, determine_ext, + ExtractorError, ) @@ -29,14 +30,15 @@ def _real_extract(self, url): webpage = self._download_webpage('http://fernsehkritik.tv/folge-%s/play' % episode, episode) title = clean_html(self._html_search_regex('

([^<]+?)

', webpage, 'title')) matches = re.search(r'(?s)]*poster="([^"]+)"[^>]*>(.*?)', webpage) - if matches: - poster, sources = matches.groups() - urls = re.findall(r'(?s)]*src="([^"]+)"[^>]*>', sources) - if sources: - formats = [{'url': url, 'format_id': determine_ext(url)} for url in urls] - return { - 'id': episode, - 'title': title, - 'formats': formats, - 'thumbnail': poster, - } + if matches is None: + raise ExtractorError('Unable to extract the video') + + poster, sources = matches.groups() + urls = re.findall(r'(?s)]*src="([^"]+)"[^>]*>', sources) + formats = [{'url': url, 'format_id': determine_ext(url)} for url in urls] + return { + 'id': episode, + 'title': title, + 'formats': formats, + 'thumbnail': poster, + }