[nuevo] Generalize nuevo extractor and add support for trollvids

Supports only the nuevo player for now (most common).

[trollvids] convert duration to an int

[trollvids] added a test

[trollvids] made flake8 shut up

Generalized the Nuevo extractor

Affects: anitube, trollvids, trutube

[nuevo] Complied with the code comments.
This commit is contained in:
Andrew "Akari" Alexeyew 2015-12-02 06:00:47 +02:00 committed by Sergey M․
parent 4fcd9d147d
commit d570746e45
5 changed files with 98 additions and 46 deletions

View file

@ -1,10 +1,9 @@
from __future__ import unicode_literals
from .common import InfoExtractor
from ..utils import xpath_text
from .nuevo import NuevoBaseIE
class TruTubeIE(InfoExtractor):
class TruTubeIE(NuevoBaseIE):
_VALID_URL = r'https?://(?:www\.)?trutube\.tv/(?:video/|nuevo/player/embed\.php\?v=)(?P<id>[0-9]+)'
_TESTS = [{
'url': 'http://trutube.tv/video/14880/Ramses-II-Proven-To-Be-A-Red-Headed-Caucasoid-',
@ -22,19 +21,11 @@ class TruTubeIE(InfoExtractor):
def _real_extract(self, url):
video_id = self._match_id(url)
config_url = 'https://trutube.tv/nuevo/player/config.php?v=%s' % video_id
config = self._download_xml(
'https://trutube.tv/nuevo/player/config.php?v=%s' % video_id,
video_id, transform_source=lambda s: s.strip())
info = self._extract_nuevo(config_url, video_id)
# filehd is always 404
video_url = xpath_text(config, './file', 'video URL', fatal=True)
title = xpath_text(config, './title', 'title').strip()
thumbnail = xpath_text(config, './image', ' thumbnail')
# filehd always 404s
info['formats'] = info['formats'][:1]
return {
'id': video_id,
'url': video_url,
'title': title,
'thumbnail': thumbnail,
}
return info