From 4a702f381924476511d1d73d2de15b272332f27b Mon Sep 17 00:00:00 2001 From: Christopher Neugebauer <chrisjrn@gmail.com> Date: Tue, 27 Nov 2012 23:54:43 +1100 Subject: [PATCH] Fixes the InfoExtractor for the Colbert Report. --- youtube_dl/InfoExtractors.py | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/youtube_dl/InfoExtractors.py b/youtube_dl/InfoExtractors.py index 64383fea4..e9d8ad5b3 100644 --- a/youtube_dl/InfoExtractors.py +++ b/youtube_dl/InfoExtractors.py @@ -2332,10 +2332,19 @@ class ComedyCentralIE(InfoExtractor): epTitle = mobj.group('episode') mMovieParams = re.findall('(?:<param name="movie" value="|var url = ")(http://media.mtvnservices.com/([^"]*episode.*?:.*?))"', html) - if len(mMovieParams) == 0: - self._downloader.trouble(u'ERROR: unable to find Flash URL in webpage ' + url) - return + if len(mMovieParams) == 0: + # The Colbert Report embeds the information in a without + # a URL prefix; so extract the alternate reference + # and then add the URL prefix manually. + + altMovieParams = re.findall('data-mgid="([^"]*episode.*?:.*?)"', html) + if len(altMovieParams) == 0: + self._downloader.trouble(u'ERROR: unable to find Flash URL in webpage ' + url) + return + else: + mMovieParams = [("http://media.mtvnservices.com/" + altMovieParams[0], altMovieParams[0])] + playerUrl_raw = mMovieParams[0][0] self.report_player_url(epTitle) try: