[nuevo] Simplify nuevo extractors (Closes #7728)

This commit is contained in:
Sergey M․ 2016-01-23 00:04:33 +06:00
parent d570746e45
commit 10677ece81
4 changed files with 41 additions and 61 deletions

View file

@ -11,22 +11,23 @@ from ..utils import (
class NuevoBaseIE(InfoExtractor):
def _extract_nuevo(self, config_url, video_id):
tree = self._download_xml(config_url, video_id, transform_source=lambda s: s.strip())
config = self._download_xml(
config_url, video_id, transform_source=lambda s: s.strip())
title = xpath_text(tree, './title')
if title:
title = title.strip()
thumbnail = xpath_text(tree, './image')
duration = float_or_none(xpath_text(tree, './duration'))
title = xpath_text(config, './title', 'title', fatal=True).strip()
video_id = xpath_text(config, './mediaid', default=video_id)
thumbnail = xpath_text(config, './image')
duration = float_or_none(xpath_text(config, './duration'))
formats = []
for element_name, format_id in (('file', 'sd'), ('filehd', 'hd')):
video_url = tree.find(element_name)
video_url is None or formats.append({
'format_id': format_id,
'url': video_url.text
})
video_url = xpath_text(config, element_name)
if video_url:
formats.append({
'url': video_url,
'format_id': format_id,
})
self._check_formats(formats, video_id)
return {
'id': video_id,