diff options
Diffstat (limited to 'youtube_dl/extractor/spiegeltv.py')
| -rw-r--r-- | youtube_dl/extractor/spiegeltv.py | 27 | 
1 files changed, 13 insertions, 14 deletions
diff --git a/youtube_dl/extractor/spiegeltv.py b/youtube_dl/extractor/spiegeltv.py index 7f388aced..98cf92d89 100644 --- a/youtube_dl/extractor/spiegeltv.py +++ b/youtube_dl/extractor/spiegeltv.py @@ -1,13 +1,13 @@  # coding: utf-8  from __future__ import unicode_literals -import re  from .common import InfoExtractor +from ..utils import float_or_none  class SpiegeltvIE(InfoExtractor): -    _VALID_URL = r'https?://(?:www\.)?spiegel\.tv/filme/(?P<id>[\-a-z0-9]+)' -    _TEST = { +    _VALID_URL = r'https?://(?:www\.)?spiegel\.tv/(?:#/)?filme/(?P<id>[\-a-z0-9]+)' +    _TESTS = [{          'url': 'http://www.spiegel.tv/filme/flug-mh370/',          'info_dict': {              'id': 'flug-mh370', @@ -20,12 +20,15 @@ class SpiegeltvIE(InfoExtractor):              # rtmp download              'skip_download': True,          } -    } +    }, { +        'url': 'http://www.spiegel.tv/#/filme/alleskino-die-wahrheit-ueber-maenner/', +        'only_matching': True, +    }]      def _real_extract(self, url): -        mobj = re.match(self._VALID_URL, url) -        video_id = mobj.group('id') - +        if '/#/' in url: +            url = url.replace('/#/', '/') +        video_id = self._match_id(url)          webpage = self._download_webpage(url, video_id)          title = self._html_search_regex(r'<h1.*?>(.*?)</h1>', webpage, 'title') @@ -61,12 +64,8 @@ class SpiegeltvIE(InfoExtractor):              })          description = media_json['subtitle'] -        duration = media_json['duration_in_ms'] / 1000. - -        if is_wide: -            format = '16x9' -        else: -            format = '4x3' +        duration = float_or_none(media_json.get('duration_in_ms'), scale=1000) +        format = '16x9' if is_wide else '4x3'          url = server + 'mp4:' + uuid + '_spiegeltv_0500_' + format + '.m4v' @@ -78,4 +77,4 @@ class SpiegeltvIE(InfoExtractor):              'description': description,              'duration': duration,              'thumbnails': thumbnails -        }
\ No newline at end of file +        }  | 
