|
|
@ -6,6 +6,7 @@ from .common import InfoExtractor |
|
|
|
from ..utils import ( |
|
|
|
clean_html, |
|
|
|
determine_ext, |
|
|
|
ExtractorError, |
|
|
|
) |
|
|
|
|
|
|
|
|
|
|
@ -29,14 +30,15 @@ class FKTVIE(InfoExtractor): |
|
|
|
webpage = self._download_webpage('http://fernsehkritik.tv/folge-%s/play' % episode, episode) |
|
|
|
title = clean_html(self._html_search_regex('<h3>([^<]+?)</h3>', webpage, 'title')) |
|
|
|
matches = re.search(r'(?s)<video[^>]*poster="([^"]+)"[^>]*>(.*?)</video>', webpage) |
|
|
|
if matches: |
|
|
|
poster, sources = matches.groups() |
|
|
|
urls = re.findall(r'(?s)<source[^>]*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)<source[^>]*src="([^"]+)"[^>]*>', sources) |
|
|
|
formats = [{'url': url, 'format_id': determine_ext(url)} for url in urls] |
|
|
|
return { |
|
|
|
'id': episode, |
|
|
|
'title': title, |
|
|
|
'formats': formats, |
|
|
|
'thumbnail': poster, |
|
|
|
} |