diff options
Diffstat (limited to 'youtube_dl/extractor/teamcoco.py')
-rw-r--r-- | youtube_dl/extractor/teamcoco.py | 27 |
1 files changed, 20 insertions, 7 deletions
diff --git a/youtube_dl/extractor/teamcoco.py b/youtube_dl/extractor/teamcoco.py index 9dcffead0..fdaf62cd0 100644 --- a/youtube_dl/extractor/teamcoco.py +++ b/youtube_dl/extractor/teamcoco.py @@ -9,8 +9,18 @@ from ..utils import ( class TeamcocoIE(InfoExtractor): - _VALID_URL = r'http://teamcoco\.com/video/(?P<url_title>.*)' - _TEST = { + _VALID_URL = r'http://teamcoco\.com/video/(?P<video_id>\d*)?/?(?P<url_title>.*)' + _TESTS = [ + { + 'url': 'http://teamcoco.com/video/80187/conan-becomes-a-mary-kay-beauty-consultant', + 'file': '80187.mp4', + 'md5': '3f7746aa0dc86de18df7539903d399ea', + 'info_dict': { + 'title': 'Conan Becomes A Mary Kay Beauty Consultant', + 'description': 'Mary Kay is perhaps the most trusted name in female beauty, so of course Conan is a natural choice to sell their products.' + } + }, + { 'url': 'http://teamcoco.com/video/louis-ck-interview-george-w-bush', 'file': '19705.mp4', 'md5': 'cde9ba0fa3506f5f017ce11ead928f9a', @@ -19,6 +29,7 @@ class TeamcocoIE(InfoExtractor): "title": "Louis C.K. Interview Pt. 1 11/3/11" } } + ] def _real_extract(self, url): mobj = re.match(self._VALID_URL, url) @@ -26,11 +37,13 @@ class TeamcocoIE(InfoExtractor): raise ExtractorError('Invalid URL: %s' % url) url_title = mobj.group('url_title') webpage = self._download_webpage(url, url_title) - - video_id = self._html_search_regex( - r'<article class="video" data-id="(\d+?)"', - webpage, 'video id') - + + video_id = mobj.group("video_id") + if video_id == '': + video_id = self._html_search_regex( + r'<article class="video" data-id="(\d+?)"', + webpage, 'video id') + self.report_extraction(video_id) data_url = 'http://teamcoco.com/cvp/2.0/%s.xml' % video_id |