X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=youtube_dl%2Fextractor%2Ffktv.py;h=40ea2789525ab720beb9e6e42a096682a9581027;hb=140ac7396542d92a8ddd53be6c35c7a79db16180;hp=c2aa23aa28f7c257d697ee2567f3b64848dfbcb8;hpb=dade7245af16c4167575bb3759e7e64011602043;p=youtube-dl
diff --git a/youtube_dl/extractor/fktv.py b/youtube_dl/extractor/fktv.py
index c2aa23aa2..40ea27895 100644
--- a/youtube_dl/extractor/fktv.py
+++ b/youtube_dl/extractor/fktv.py
@@ -6,6 +6,7 @@ from .common import InfoExtractor
from ..utils import (
clean_html,
determine_ext,
+ ExtractorError,
)
@@ -20,23 +21,35 @@ class FKTVIE(InfoExtractor):
'id': '1',
'ext': 'mp4',
'title': 'Folge 1 vom 10. April 2007',
+ 'thumbnail': 're:^https?://.*\.jpg$',
},
}
def _real_extract(self, url):
episode = self._match_id(url)
- webpage = self._download_webpage('http://fernsehkritik.tv/folge-%s/play' % episode, episode)
- title = clean_html(self._html_search_regex('
([^<]+?)
', webpage, 'title'))
- matchs = re.search(r'(?s)', webpage)
- if matchs:
- poster, sources = matchs.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,
- }
+ 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)',
+ webpage)
+ if matches is None:
+ raise ExtractorError('Unable to extract the video')
+
+ poster, sources = matches.groups()
+ if poster is None:
+ self.report_warning('unable to extract thumbnail')
+
+ urls = re.findall(r']+src="([^"]+)"', sources)
+ formats = [{
+ 'url': furl,
+ 'format_id': determine_ext(furl),
+ } for furl in urls]
+ return {
+ 'id': episode,
+ 'title': title,
+ 'formats': formats,
+ 'thumbnail': poster,
+ }