fulfilling requested changes
This commit is contained in:
parent
42daeec55f
commit
2493061dd8
@ -1,6 +1,7 @@
|
|||||||
# coding: utf-8
|
# coding: utf-8
|
||||||
from __future__ import unicode_literals
|
from __future__ import unicode_literals
|
||||||
|
|
||||||
|
import hashlib
|
||||||
from .common import InfoExtractor
|
from .common import InfoExtractor
|
||||||
from ..utils import parse_duration
|
from ..utils import parse_duration
|
||||||
|
|
||||||
@ -9,37 +10,33 @@ class MallTVIE(InfoExtractor):
|
|||||||
_VALID_URL = r'https?://(?:www\.)?mall\.tv/(?:.+/)?(?P<id>.+)'
|
_VALID_URL = r'https?://(?:www\.)?mall\.tv/(?:.+/)?(?P<id>.+)'
|
||||||
_TESTS = [
|
_TESTS = [
|
||||||
{
|
{
|
||||||
'url': ('https://www.mall.tv/18-miliard-pro-neziskovky-opravdu-jsou-sportovci-nebo-clovek-v-tisni-pijavice'),
|
'url': 'https://www.mall.tv/18-miliard-pro-neziskovky-opravdu-jsou-sportovci-nebo-clovek-v-tisni-pijavice',
|
||||||
|
'md5': '9ced0de056534410837077e23bfba796',
|
||||||
'info_dict': {
|
'info_dict': {
|
||||||
'id': ('18-miliard-pro-neziskovky-opravdu-jsou-sportovci-nebo-clovek-v-tisni-pijavice'),
|
'id': 'af7649e93dc6a2a04198e6c8143605a4',
|
||||||
'ext': 'mp4',
|
'ext': 'mp4',
|
||||||
'title': ('18 miliard pro neziskovky. Opravdu jsou sportovci nebo Člověk v tísni pijavice?'),
|
'title': '18 miliard pro neziskovky. Opravdu jsou sportovci nebo Člověk v tísni pijavice?',
|
||||||
'description': ('Pokud někdo hospodaří s penězmi daňových '
|
'description': ('Pokud někdo hospodaří s penězmi daňových '
|
||||||
'poplatníků, pak logicky chceme vědět, jak s '
|
'poplatníků, pak logicky chceme vědět, jak s '
|
||||||
'nimi nakládá. Objem dotací pro neziskovky '
|
'nimi nakládá. Objem dotací pro neziskovky '
|
||||||
'roste, ale opravdu jsou tyto organizace '
|
'roste, ale opravdu jsou tyto organizace '
|
||||||
'„pijavice", jak o nich hovoří And')
|
'„pijavice", jak o nich hovoří And')
|
||||||
},
|
}
|
||||||
'params': {
|
|
||||||
'skip_download': True
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
'url': ('https://www.mall.tv/kdo-to-plati/18-miliard-pro-neziskovky-opravdu-jsou-sportovci-nebo-clovek-v-tisni-pijavice'),
|
'url': 'https://www.mall.tv/kdo-to-plati/18-miliard-pro-neziskovky-opravdu-jsou-sportovci-nebo-clovek-v-tisni-pijavice',
|
||||||
|
'md5': '9ced0de056534410837077e23bfba796',
|
||||||
'info_dict': {
|
'info_dict': {
|
||||||
'id': ('18-miliard-pro-neziskovky-opravdu-jsou-sportovci-nebo-clovek-v-tisni-pijavice'),
|
'id': 'af7649e93dc6a2a04198e6c8143605a4',
|
||||||
'ext': 'mp4',
|
'ext': 'mp4',
|
||||||
'title': ('18 miliard pro neziskovky. Opravdu jsou sportovci nebo Člověk v tísni pijavice?'),
|
'title': '18 miliard pro neziskovky. Opravdu jsou sportovci nebo Člověk v tísni pijavice?',
|
||||||
'description': ('Pokud někdo hospodaří s penězmi daňových '
|
'description': ('Pokud někdo hospodaří s penězmi daňových '
|
||||||
'poplatníků, pak logicky chceme vědět, jak s '
|
'poplatníků, pak logicky chceme vědět, jak s '
|
||||||
'nimi nakládá. Objem dotací pro neziskovky '
|
'nimi nakládá. Objem dotací pro neziskovky '
|
||||||
'roste, ale opravdu jsou tyto organizace '
|
'roste, ale opravdu jsou tyto organizace '
|
||||||
'„pijavice", jak o nich hovoří And')
|
'„pijavice", jak o nich hovoří And')
|
||||||
},
|
}
|
||||||
'params': {
|
}
|
||||||
'skip_download': True
|
|
||||||
}
|
|
||||||
},
|
|
||||||
]
|
]
|
||||||
|
|
||||||
def _real_extract(self, url):
|
def _real_extract(self, url):
|
||||||
@ -53,13 +50,17 @@ class MallTVIE(InfoExtractor):
|
|||||||
formats = self._extract_m3u8_formats(format_url+'.m3u8',
|
formats = self._extract_m3u8_formats(format_url+'.m3u8',
|
||||||
video_id, 'mp4')
|
video_id, 'mp4')
|
||||||
self._sort_formats(formats)
|
self._sort_formats(formats)
|
||||||
title = info.get('title', self._og_search_title(webpage, fatal=False))
|
|
||||||
thumbnail = info.get('thumbnailUrl', self._og_search_thumbnail(webpage))
|
thumbnail = info.get('thumbnailUrl', self._og_search_thumbnail(webpage))
|
||||||
return {
|
duration = parse_duration(info.get('duration'))
|
||||||
'id': video_id,
|
result = {
|
||||||
'title': title,
|
'id': hashlib.md5(video_id).hexdigest().decode('utf8'),
|
||||||
'thumbnail': thumbnail,
|
'title': info.get('name', self._og_search_title(webpage)),
|
||||||
'description': self._og_search_description(webpage),
|
'description': self._og_search_description(webpage),
|
||||||
'duration': parse_duration(info.get('duration')),
|
|
||||||
'formats': formats
|
'formats': formats
|
||||||
}
|
}
|
||||||
|
if thumbnail:
|
||||||
|
result.update({'thumbnail': thumbnail})
|
||||||
|
if duration:
|
||||||
|
result.update({'duration': duration})
|
||||||
|
|
||||||
|
return result
|
||||||
|
@ -183,7 +183,7 @@ DATE_FORMATS_MONTH_FIRST.extend([
|
|||||||
])
|
])
|
||||||
|
|
||||||
PACKED_CODES_RE = r"}\('(.+)',(\d+),(\d+),'([^']+)'\.split\('\|'\)"
|
PACKED_CODES_RE = r"}\('(.+)',(\d+),(\d+),'([^']+)'\.split\('\|'\)"
|
||||||
JSON_LD_RE = r'(?is)<script[^>]+type=(["\'])?application/ld\+json\1?[^>]*>(?P<json_ld>.+?)</script>'
|
JSON_LD_RE = r'(?is)<script[^>]+type=(["\']|)application/ld\+json\1[^>]*>(?P<json_ld>.+?)</script>'
|
||||||
|
|
||||||
|
|
||||||
def preferredencoding():
|
def preferredencoding():
|
||||||
|
Loading…
x
Reference in New Issue
Block a user