[cspan] Make ‘www’ optional and improve the regex for extracting the id (fixes #2194)
authorJaime Marquínez Ferrándiz <jaime.marquinez.ferrandiz@gmail.com>
Wed, 22 Jan 2014 10:06:03 +0000 (11:06 +0100)
committerJaime Marquínez Ferrándiz <jaime.marquinez.ferrandiz@gmail.com>
Wed, 22 Jan 2014 10:06:03 +0000 (11:06 +0100)
youtube_dl/extractor/cspan.py

index a2cbd4d8d592fd2dd6899361a3ab8f4bb3b8a8ed..521bbdee0875ad904aeecc2c373987eb37f486c5 100644 (file)
@@ -10,7 +10,7 @@ from ..utils import (
 
 
 class CSpanIE(InfoExtractor):
-    _VALID_URL = r'http://www\.c-spanvideo\.org/program/(.*)'
+    _VALID_URL = r'http://(?:www\.)?c-spanvideo\.org/program/(?P<name>.*)'
     IE_DESC = 'C-SPAN'
     _TEST = {
         'url': 'http://www.c-spanvideo.org/program/HolderonV',
@@ -24,9 +24,9 @@ class CSpanIE(InfoExtractor):
 
     def _real_extract(self, url):
         mobj = re.match(self._VALID_URL, url)
-        prog_name = mobj.group(1)
+        prog_name = mobj.group('name')
         webpage = self._download_webpage(url, prog_name)
-        video_id = self._search_regex(r'programid=(.*?)&', webpage, 'video id')
+        video_id = self._search_regex(r'prog(?:ram)?id=(.*?)&', webpage, 'video id')
 
         title = self._html_search_regex(
             r'<!-- title -->\n\s*<h1[^>]*>(.*?)</h1>', webpage, 'title')