about summary refs log tree commit diff
diff options
context:
space:
mode:
authorPhilipp Hagemeister <phihag@phihag.de>2014-04-01 00:02:29 +0200
committerPhilipp Hagemeister <phihag@phihag.de>2014-04-01 00:02:32 +0200
commit16f4eb723a49d6ac7cacddf9678782f4704dff62 (patch)
tree7c896898d6d46964bdf3e2a77533e8d87aa11c10
parent1cbd4106201fe9b3890932c5a099892b0a05db19 (diff)
downloadyoutube-dl-16f4eb723a49d6ac7cacddf9678782f4704dff62.tar.gz
youtube-dl-16f4eb723a49d6ac7cacddf9678782f4704dff62.tar.xz
youtube-dl-16f4eb723a49d6ac7cacddf9678782f4704dff62.zip
[comedycentral] Add support for /videos URLs (Fixes #2660)
-rw-r--r--test/test_all_urls.py7
-rw-r--r--youtube_dl/extractor/comedycentral.py7
2 files changed, 11 insertions, 3 deletions
diff --git a/test/test_all_urls.py b/test/test_all_urls.py
index 5b6d18a82..dffe3f958 100644
--- a/test/test_all_urls.py
+++ b/test/test_all_urls.py
@@ -144,7 +144,12 @@ class TestAllURLsMatching(unittest.TestCase):
         self.assertMatch('http://video.pbs.org/widget/partnerplayer/980042464/', ['PBS'])
 
     def test_ComedyCentralShows(self):
-        self.assertMatch('http://thedailyshow.cc.com/extended-interviews/xm3fnq/andrew-napolitano-extended-interview', ['ComedyCentralShows'])
+        self.assertMatch(
+            'http://thedailyshow.cc.com/extended-interviews/xm3fnq/andrew-napolitano-extended-interview',
+            ['ComedyCentralShows'])
+        self.assertMatch(
+            'http://thecolbertreport.cc.com/videos/29w6fx/-realhumanpraise-for-fox-news',
+            ['ComedyCentralShows'])
 
 if __name__ == '__main__':
     unittest.main()
diff --git a/youtube_dl/extractor/comedycentral.py b/youtube_dl/extractor/comedycentral.py
index 60c0a4f5d..cbc212065 100644
--- a/youtube_dl/extractor/comedycentral.py
+++ b/youtube_dl/extractor/comedycentral.py
@@ -43,7 +43,8 @@ class ComedyCentralShowsIE(InfoExtractor):
                           (?P<showname>thedailyshow|thecolbertreport)\.(?:cc\.)?com/
                          (full-episodes/(?P<episode>.*)|
                           (?P<clip>
-                              (the-colbert-report-(videos|collections)/(?P<clipID>[0-9]+)/[^/]*/(?P<cntitle>.*?))
+                              (?:videos/[^/]+/(?P<videotitle>[^/?#]+))
+                              |(the-colbert-report-(videos|collections)/(?P<clipID>[0-9]+)/[^/]*/(?P<cntitle>.*?))
                               |(watch/(?P<date>[^/]*)/(?P<tdstitle>.*)))|
                           (?P<interview>
                               extended-interviews/(?P<interID>[0-9a-z]+)/(?:playlist_tds_extended_)?(?P<interview_title>.*?)(/.*?)?)))
@@ -102,7 +103,9 @@ class ComedyCentralShowsIE(InfoExtractor):
             assert mobj is not None
 
         if mobj.group('clip'):
-            if mobj.group('showname') == 'thedailyshow':
+            if mobj.group('videotitle'):
+                epTitle = mobj.group('videotitle')
+            elif mobj.group('showname') == 'thedailyshow':
                 epTitle = mobj.group('tdstitle')
             else:
                 epTitle = mobj.group('cntitle')