aboutsummaryrefslogtreecommitdiff
path: root/youtube_dl
diff options
context:
space:
mode:
Diffstat (limited to 'youtube_dl')
-rw-r--r--youtube_dl/extractor/comedycentral.py33
1 files changed, 33 insertions, 0 deletions
diff --git a/youtube_dl/extractor/comedycentral.py b/youtube_dl/extractor/comedycentral.py
index 2b6aaa3aa..63f68f765 100644
--- a/youtube_dl/extractor/comedycentral.py
+++ b/youtube_dl/extractor/comedycentral.py
@@ -273,3 +273,36 @@ class ComedyCentralShowsIE(MTVServicesInfoExtractor):
'title': show_name + ' ' + title,
'description': description,
}
+
+
+class ComedyCentralTVIE(MTVServicesInfoExtractor):
+ _VALID_URL = r'https?://(?:www\.)?comedycentral\.tv/(?:staffeln|shows)/(?P<id>[^/?#&]+)'
+ _TESTS = [{
+ 'url': 'http://www.comedycentral.tv/staffeln/7436-the-mindy-project-staffel-4',
+ 'info_dict': {
+ 'id': 'local_playlist-f99b626bdfe13568579a',
+ 'ext': 'flv',
+ 'title': 'Episode_the-mindy-project_shows_season-4_episode-3_full-episode_part1',
+ },
+ 'params': {
+ # rtmp download
+ 'skip_download': True,
+ },
+ }, {
+ 'url': 'http://www.comedycentral.tv/shows/1074-workaholics',
+ 'only_matching': True,
+ }, {
+ 'url': 'http://www.comedycentral.tv/shows/1727-the-mindy-project/bonus',
+ 'only_matching': True,
+ }]
+
+ def _real_extract(self, url):
+ video_id = self._match_id(url)
+
+ webpage = self._download_webpage(url, video_id)
+
+ mrss_url = self._search_regex(
+ r'data-mrss=(["\'])(?P<url>(?:(?!\1).)+)\1',
+ webpage, 'mrss url', group='url')
+
+ return self._get_videos_info_from_url(mrss_url, video_id)