diff options
| -rw-r--r-- | youtube_dl/extractor/ceskatelevize.py | 65 | 
1 files changed, 40 insertions, 25 deletions
| diff --git a/youtube_dl/extractor/ceskatelevize.py b/youtube_dl/extractor/ceskatelevize.py index 59f2a8e45..5311602fb 100644 --- a/youtube_dl/extractor/ceskatelevize.py +++ b/youtube_dl/extractor/ceskatelevize.py @@ -16,31 +16,46 @@ from ..utils import (  class CeskaTelevizeIE(InfoExtractor):      _VALID_URL = r'https?://www\.ceskatelevize\.cz/(porady|ivysilani)/(.+/)?(?P<id>[^?#]+)' -    _TESTS = [{ -        'url': 'http://www.ceskatelevize.cz/ivysilani/10532695142-prvni-republika/213512120230004-spanelska-chripka', -        'info_dict': { -            'id': '213512120230004', -            'ext': 'flv', -            'title': 'První republika: Španělská chřipka', -            'duration': 3107.4, +    _TESTS = [ +        { +            'url': 'http://www.ceskatelevize.cz/ivysilani/10532695142-prvni-republika/213512120230004-spanelska-chripka', +            'info_dict': { +                'id': '213512120230004', +                'ext': 'flv', +                'title': 'První republika: Španělská chřipka', +                'duration': 3107.4, +            }, +            'params': { +                'skip_download': True,  # requires rtmpdump +            }, +            'skip': 'Works only from Czech Republic.',          }, -        'params': { -            'skip_download': True,  # requires rtmpdump +        { +            'url': 'http://www.ceskatelevize.cz/ivysilani/1030584952-tsatsiki-maminka-a-policajt', +            'info_dict': { +                'id': '20138143440', +                'ext': 'flv', +                'title': 'Tsatsiki, maminka a policajt', +                'duration': 6754.1, +            }, +            'params': { +                'skip_download': True,  # requires rtmpdump +            }, +            'skip': 'Works only from Czech Republic.',          }, -        'skip': 'Works only from Czech Republic.', -    }, { -        'url': 'http://www.ceskatelevize.cz/ivysilani/1030584952-tsatsiki-maminka-a-policajt', -        'info_dict': { -            'id': '20138143440', -            'ext': 'flv', -            'title': 'Tsatsiki, maminka a policajt', -            'duration': 6754.1, +        { +            'url': 'http://www.ceskatelevize.cz/ivysilani/10532695142-prvni-republika/bonus/14716-zpevacka-z-duparny-bobina', +            'info_dict': { +                'id': '14716', +                'ext': 'flv', +                'title': 'První republika: Zpěvačka z Dupárny Bobina', +                'duration': 90, +            }, +            'params': { +                'skip_download': True,  # requires rtmpdump +            },          }, -        'params': { -            'skip_download': True,  # requires rtmpdump -        }, -        'skip': 'Works only from Czech Republic.', -    }] +    ]      def _real_extract(self, url):          url = url.replace('/porady/', '/ivysilani/').replace('/video/', '') @@ -50,9 +65,9 @@ class CeskaTelevizeIE(InfoExtractor):          webpage = self._download_webpage(url, video_id) -        if '<p class="title">Chyba konfigurace prohlížeče.</p>' not in webpage: -            msg = self._html_search_regex(r'<p class="title">(.+?)</p>', webpage, 'error-message') -            raise ExtractorError(msg.replace('<br />', ' ')) +        NOT_AVAILABLE_STRING = 'This content is not available at your territory due to limited copyright.' +        if '%s</p>' % NOT_AVAILABLE_STRING in webpage: +            raise ExtractorError(NOT_AVAILABLE_STRING, expected=True)          typ = self._html_search_regex(r'getPlaylistUrl\(\[\{"type":"(.+?)","id":".+?"\}\],', webpage, 'type')          episode_id = self._html_search_regex(r'getPlaylistUrl\(\[\{"type":".+?","id":"(.+?)"\}\],', webpage, 'episode_id') | 
