diff options
| author | Remita Amine <remitamine@gmail.com> | 2021-02-17 19:50:04 +0100 | 
|---|---|---|
| committer | Remita Amine <remitamine@gmail.com> | 2021-02-17 19:50:04 +0100 | 
| commit | 3997efb65ef16dbd8c4792e79e797cbcab0fbec1 (patch) | |
| tree | a1be40ffb7937afcbfbc0128a8ec00927602969b /youtube_dl/extractor/dplay.py | |
| parent | a7356dffe90ed68958d839da073f1321f87a4feb (diff) | |
[dplay] add support for de.hgtv.com (closes #28182)
Diffstat (limited to 'youtube_dl/extractor/dplay.py')
| -rw-r--r-- | youtube_dl/extractor/dplay.py | 37 | 
1 files changed, 34 insertions, 3 deletions
| diff --git a/youtube_dl/extractor/dplay.py b/youtube_dl/extractor/dplay.py index 540505719..0f0632f26 100644 --- a/youtube_dl/extractor/dplay.py +++ b/youtube_dl/extractor/dplay.py @@ -11,11 +11,13 @@ from ..utils import (      ExtractorError,      float_or_none,      int_or_none, +    strip_or_none,      unified_timestamp,  )  class DPlayIE(InfoExtractor): +    _PATH_REGEX = r'/(?P<id>[^/]+/[^/?#]+)'      _VALID_URL = r'''(?x)https?://          (?P<domain>              (?:www\.)?(?P<host>d @@ -25,7 +27,7 @@ class DPlayIE(InfoExtractor):                  )              )|              (?P<subdomain_country>es|it)\.dplay\.com -        )/[^/]+/(?P<id>[^/]+/[^/?#]+)''' +        )/[^/]+''' + _PATH_REGEX      _TESTS = [{          # non geo restricted, via secure api, unsigned download hls URL @@ -272,7 +274,7 @@ class DPlayIE(InfoExtractor):              'id': video_id,              'display_id': display_id,              'title': title, -            'description': info.get('description'), +            'description': strip_or_none(info.get('description')),              'duration': float_or_none(info.get('videoDuration'), 1000),              'timestamp': unified_timestamp(info.get('publishStart')),              'series': series, @@ -295,7 +297,7 @@ class DPlayIE(InfoExtractor):  class DiscoveryPlusIE(DPlayIE): -    _VALID_URL = r'https?://(?:www\.)?discoveryplus\.com/video/(?P<id>[^/]+/[^/]+)' +    _VALID_URL = r'https?://(?:www\.)?discoveryplus\.com/video' + DPlayIE._PATH_REGEX      _TESTS = [{          'url': 'https://www.discoveryplus.com/video/property-brothers-forever-home/food-and-family',          'info_dict': { @@ -335,3 +337,32 @@ class DiscoveryPlusIE(DPlayIE):          display_id = self._match_id(url)          return self._get_disco_api_info(              url, display_id, 'us1-prod-direct.discoveryplus.com', 'go', 'us') + + +class HGTVDeIE(DPlayIE): +    _VALID_URL = r'https?://de\.hgtv\.com/sendungen' + DPlayIE._PATH_REGEX +    _TESTS = [{ +        'url': 'https://de.hgtv.com/sendungen/tiny-house-klein-aber-oho/wer-braucht-schon-eine-toilette/', +        'info_dict': { +            'id': '151205', +            'display_id': 'tiny-house-klein-aber-oho/wer-braucht-schon-eine-toilette', +            'ext': 'mp4', +            'title': 'Wer braucht schon eine Toilette', +            'description': 'md5:05b40a27e7aed2c9172de34d459134e2', +            'duration': 1177.024, +            'timestamp': 1595705400, +            'upload_date': '20200725', +            'creator': 'HGTV', +            'series': 'Tiny House - klein, aber oho', +            'season_number': 3, +            'episode_number': 3, +        }, +        'params': { +            'format': 'bestvideo', +        }, +    }] + +    def _real_extract(self, url): +        display_id = self._match_id(url) +        return self._get_disco_api_info( +            url, display_id, 'eu1-prod.disco-api.com', 'hgtv', 'de') | 
