diff options
| author | Remita Amine <remitamine@gmail.com> | 2016-09-15 08:12:12 +0100 | 
|---|---|---|
| committer | Remita Amine <remitamine@gmail.com> | 2016-09-15 08:12:12 +0100 | 
| commit | c035dba19e815eca4a21f17918e96c2e2bd55d6b (patch) | |
| tree | 215d7b7a4163c7c7fba1026ec83a95c0f5381c5c | |
| parent | 87148bb7110ed54ef50f0660dfe0a735cdede3ca (diff) | |
[bellmedia] add support for more sites
| -rw-r--r-- | youtube_dl/extractor/bellmedia.py (renamed from youtube_dl/extractor/ctv.py) | 39 | ||||
| -rw-r--r-- | youtube_dl/extractor/extractors.py | 2 | 
2 files changed, 35 insertions, 6 deletions
diff --git a/youtube_dl/extractor/ctv.py b/youtube_dl/extractor/bellmedia.py index a1fe86316..32326ed9e 100644 --- a/youtube_dl/extractor/ctv.py +++ b/youtube_dl/extractor/bellmedia.py @@ -6,8 +6,25 @@ import re  from .common import InfoExtractor -class CTVIE(InfoExtractor): -    _VALID_URL = r'https?://(?:www\.)?(?P<domain>ctv|tsn|bnn|thecomedynetwork)\.ca/.*?(?:\bvid=|-vid|~|%7E)(?P<id>[0-9.]+)' +class BellMediaIE(InfoExtractor): +    _VALID_URL = r'''(?x)https?://(?:www\.)? +        (?P<domain> +            (?: +                ctv| +                tsn| +                bnn| +                thecomedynetwork| +                discovery| +                discoveryvelocity| +                sciencechannel| +                investigationdiscovery| +                animalplanet| +                bravo| +                mtv| +                space +            )\.ca| +            much\.com +        )/.*?(?:\bvid=|-vid|~|%7E|/(?:episode)?)(?P<id>[0-9]{6})'''      _TESTS = [{          'url': 'http://www.ctv.ca/video/player?vid=706966',          'md5': 'ff2ebbeae0aa2dcc32a830c3fd69b7b0', @@ -32,15 +49,27 @@ class CTVIE(InfoExtractor):      }, {          'url': 'http://www.ctv.ca/YourMorning/Video/S1E6-Monday-August-29-2016-vid938009',          'only_matching': True, +    }, { +        'url': 'http://www.much.com/shows/atmidnight/episode948007/tuesday-september-13-2016', +        'only_matching': True, +    }, { +        'url': 'http://www.much.com/shows/the-almost-impossible-gameshow/928979/episode-6', +        'only_matching': True,      }] +    _DOMAINS = { +        'thecomedynetwork': 'comedy', +        'discoveryvelocity': 'discvel', +        'sciencechannel': 'discsci', +        'investigationdiscovery': 'invdisc', +        'animalplanet': 'aniplan', +    }      def _real_extract(self, url):          domain, video_id = re.match(self._VALID_URL, url).groups() -        if domain == 'thecomedynetwork': -            domain = 'comedy' +        domain = domain.split('.')[0]          return {              '_type': 'url_transparent',              'id': video_id, -            'url': '9c9media:%s_web:%s' % (domain, video_id), +            'url': '9c9media:%s_web:%s' % (self._DOMAINS.get(domain, domain), video_id),              'ie_key': 'NineCNineMedia',          } diff --git a/youtube_dl/extractor/extractors.py b/youtube_dl/extractor/extractors.py index 522691de1..dd0579425 100644 --- a/youtube_dl/extractor/extractors.py +++ b/youtube_dl/extractor/extractors.py @@ -93,6 +93,7 @@ from .bbc import (  )  from .beeg import BeegIE  from .behindkink import BehindKinkIE +from .bellmedia import BellMediaIE  from .beatportpro import BeatportProIE  from .bet import BetIE  from .bigflix import BigflixIE @@ -195,7 +196,6 @@ from .crunchyroll import (  )  from .cspan import CSpanIE  from .ctsnews import CtsNewsIE -from .ctv import CTVIE  from .ctvnews import CTVNewsIE  from .cultureunplugged import CultureUnpluggedIE  from .curiositystream import (  | 
