diff options
| -rw-r--r-- | youtube_dl/extractor/vvvvid.py | 35 | 
1 files changed, 31 insertions, 4 deletions
| diff --git a/youtube_dl/extractor/vvvvid.py b/youtube_dl/extractor/vvvvid.py index f4cae7fe9..778ce8b76 100644 --- a/youtube_dl/extractor/vvvvid.py +++ b/youtube_dl/extractor/vvvvid.py @@ -4,6 +4,7 @@ from __future__ import unicode_literals  import re  from .common import InfoExtractor +from .youtube import YoutubeIE  from ..utils import (      ExtractorError,      int_or_none, @@ -48,6 +49,22 @@ class VVVVIDIE(InfoExtractor):              'skip_download': True,          },      }, { +        # video_type == 'video/youtube' +        'url': 'https://www.vvvvid.it/show/404/one-punch-man/406/486683/trailer', +        'md5': '33e0edfba720ad73a8782157fdebc648', +        'info_dict': { +            'id': 'RzmFKUDOUgw', +            'ext': 'mp4', +            'title': 'Trailer', +            'upload_date': '20150906', +            'description': 'md5:a5e802558d35247fee285875328c0b80', +            'uploader_id': 'BandaiVisual', +            'uploader': 'BANDAI NAMCO Arts Channel', +        }, +        'params': { +            'skip_download': True, +        }, +    }, {          'url': 'https://www.vvvvid.it/show/434/perche-dovrei-guardarlo-di-dario-moccia/437/489048',          'only_matching': True      }] @@ -154,12 +171,13 @@ class VVVVIDIE(InfoExtractor):                      if season_number:                          info['season_number'] = int(season_number) -        for quality in ('_sd', ''): +        video_type = video_data.get('video_type') +        is_youtube = False +        for quality in ('', '_sd'):              embed_code = video_data.get('embed_info' + quality)              if not embed_code:                  continue              embed_code = ds(embed_code) -            video_type = video_data.get('video_type')              if video_type in ('video/rcs', 'video/kenc'):                  if video_type == 'video/kenc':                      kenc = self._download_json( @@ -172,19 +190,28 @@ class VVVVIDIE(InfoExtractor):                      if kenc_message:                          embed_code += '?' + ds(kenc_message)                  formats.extend(self._extract_akamai_formats(embed_code, video_id)) +            elif video_type == 'video/youtube': +                info.update({ +                    '_type': 'url_transparent', +                    'ie_key': YoutubeIE.ie_key(), +                    'url': embed_code, +                }) +                is_youtube = True +                break              else:                  formats.extend(self._extract_wowza_formats(                      'http://sb.top-ix.org/videomg/_definst_/mp4:%s/playlist.m3u8' % embed_code, video_id))              metadata_from_url(embed_code) -        self._sort_formats(formats) +        if not is_youtube: +            self._sort_formats(formats) +            info['formats'] = formats          metadata_from_url(video_data.get('thumbnail'))          info.update(self._extract_common_video_info(video_data))          info.update({              'id': video_id,              'title': title, -            'formats': formats,              'duration': int_or_none(video_data.get('length')),              'series': video_data.get('show_title'),              'season_id': season_id, | 
