diff options
author | Sergey M․ <dstftw@gmail.com> | 2016-01-26 20:42:20 +0600 |
---|---|---|
committer | Sergey M․ <dstftw@gmail.com> | 2016-01-26 20:42:20 +0600 |
commit | f693213567010ecc108447cba4615ae2932d1c18 (patch) | |
tree | 7eda5a08b11f8a5ae3a4a2ad3041016bb96dc976 /youtube_dl | |
parent | 9165d6bab9ae3cc98984ebeb249ef320b9f4db83 (diff) |
[cspan] Fix clip/prog id extraction (#8317)
Diffstat (limited to 'youtube_dl')
-rw-r--r-- | youtube_dl/extractor/cspan.py | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/youtube_dl/extractor/cspan.py b/youtube_dl/extractor/cspan.py index b3ee67018..f78cbbd7e 100644 --- a/youtube_dl/extractor/cspan.py +++ b/youtube_dl/extractor/cspan.py @@ -68,11 +68,16 @@ class CSpanIE(InfoExtractor): video_type, video_id = matches.groups() video_type = 'clip' if video_type == 'id' else 'program' else: - senate_isvp_url = SenateISVPIE._search_iframe_url(webpage) - if senate_isvp_url: - title = self._og_search_title(webpage) - surl = smuggle_url(senate_isvp_url, {'force_title': title}) - return self.url_result(surl, 'SenateISVP', video_id, title) + m = re.search(r'data-(?P<type>clip|prog)id=["\'](?P<id>\d+)', webpage) + if m: + video_id = m.group('id') + video_type = 'program' if m.group('type') == 'prog' else 'clip' + else: + senate_isvp_url = SenateISVPIE._search_iframe_url(webpage) + if senate_isvp_url: + title = self._og_search_title(webpage) + surl = smuggle_url(senate_isvp_url, {'force_title': title}) + return self.url_result(surl, 'SenateISVP', video_id, title) if video_type is None or video_id is None: raise ExtractorError('unable to find video id and type') |