diff options
| author | Sergey M․ <dstftw@gmail.com> | 2019-02-17 14:27:00 +0700 | 
|---|---|---|
| committer | Sergey M․ <dstftw@gmail.com> | 2019-02-17 14:27:00 +0700 | 
| commit | 388cfbd3d8915ebb99714ac8e7ce4151edf96d8d (patch) | |
| tree | 0fead38477369db71258af729d8ada6d25a0aa5d | |
| parent | d93083789bf9c318b18d52ac132e9495345b9ebc (diff) | |
[tvp:website] Improve support
| -rw-r--r-- | youtube_dl/extractor/extractors.py | 2 | ||||
| -rw-r--r-- | youtube_dl/extractor/tvp.py | 26 | 
2 files changed, 23 insertions, 5 deletions
| diff --git a/youtube_dl/extractor/extractors.py b/youtube_dl/extractor/extractors.py index c70452dcd..923dfe7f4 100644 --- a/youtube_dl/extractor/extractors.py +++ b/youtube_dl/extractor/extractors.py @@ -1218,7 +1218,7 @@ from .tvnow import (  from .tvp import (      TVPEmbedIE,      TVPIE, -    TVPSeriesIE, +    TVPWebsiteIE,  )  from .tvplay import (      TVPlayIE, diff --git a/youtube_dl/extractor/tvp.py b/youtube_dl/extractor/tvp.py index 05669a366..accff75b5 100644 --- a/youtube_dl/extractor/tvp.py +++ b/youtube_dl/extractor/tvp.py @@ -198,19 +198,36 @@ class TVPEmbedIE(InfoExtractor):          } -class TVPSeriesIE(InfoExtractor): +class TVPWebsiteIE(InfoExtractor):      IE_NAME = 'tvp:series' -    _VALID_URL = r'https?://vod\.tvp\.pl/website/(?P<display_id>[^,]+),(?P<id>\d+)/video' +    _VALID_URL = r'https?://vod\.tvp\.pl/website/(?P<display_id>[^,]+),(?P<id>\d+)'      _TESTS = [{ +        # series          'url': 'https://vod.tvp.pl/website/lzy-cennet,38678312/video',          'info_dict': {              'id': '38678312',          },          'playlist_count': 115, +    }, { +        # film +        'url': 'https://vod.tvp.pl/website/gloria,35139666', +        'info_dict': { +            'id': '36637049', +            'ext': 'mp4', +            'title': 'Gloria, Gloria', +        }, +        'params': { +            'skip_download': True, +        }, +        'add_ie': ['TVPEmbed'], +    }, { +        'url': 'https://vod.tvp.pl/website/lzy-cennet,38678312', +        'only_matching': True,      }] -    def _entries(self, url, display_id): +    def _entries(self, display_id, playlist_id): +        url = 'https://vod.tvp.pl/website/%s,%s/video' % (display_id, playlist_id)          for page_num in itertools.count(1):              page = self._download_webpage(                  url, display_id, 'Downloading page %d' % page_num, @@ -231,4 +248,5 @@ class TVPSeriesIE(InfoExtractor):      def _real_extract(self, url):          mobj = re.match(self._VALID_URL, url)          display_id, playlist_id = mobj.group('display_id', 'id') -        return self.playlist_result(self._entries(url, display_id), playlist_id) +        return self.playlist_result( +            self._entries(display_id, playlist_id), playlist_id) | 
