diff --git a/youtube_dl/extractor/malltv.py b/youtube_dl/extractor/malltv.py index a778eb10f..0366d2e83 100644 --- a/youtube_dl/extractor/malltv.py +++ b/youtube_dl/extractor/malltv.py @@ -2,6 +2,7 @@ from __future__ import unicode_literals from .common import InfoExtractor +from ..utils import parse_duration class MallTVIE(InfoExtractor): @@ -22,7 +23,7 @@ class MallTVIE(InfoExtractor): 'nimi nakládá. Objem dotací pro neziskovky ' 'roste, ale opravdu jsou tyto organizace ' '„pijavice", jak o nich hovoří And') - } + }, }, { 'url': ('https://www.mall.tv/kdo-to-plati/18-miliard-pro-neziskovky' @@ -46,22 +47,29 @@ class MallTVIE(InfoExtractor): def _real_extract(self, url): video_id = self._match_id(url) webpage = self._download_webpage(url, video_id) - - self.report_extraction(video_id) + JSON_LD_RE = (r'(?is)]+type=([\"\'])?application/ld\+json>.*' + '(?P{.+}).*') + json_ld = self._search_regex(JSON_LD_RE, webpage, 'JSON_LD', + group='json_ld') + if not json_ld: + info = {} + else: + info = self._json_ld(json_ld, video_id) format_url = self._html_search_regex( - r'