|
@@ -1,10 +1,9 @@
|
|
from __future__ import unicode_literals
|
|
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]+)'
|
|
_VALID_URL = r'https?://(?:www\.)?trutube\.tv/(?:video/|nuevo/player/embed\.php\?v=)(?P<id>[0-9]+)'
|
|
_TESTS = [{
|
|
_TESTS = [{
|
|
'url': 'http://trutube.tv/video/14880/Ramses-II-Proven-To-Be-A-Red-Headed-Caucasoid-',
|
|
'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):
|
|
def _real_extract(self, url):
|
|
video_id = self._match_id(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
|