commit 0c708f11cbde6339adbf9a8477f673e25e68e920
parent fb2a706d11a52156f56aaa8751e40177494ababa
Author: Jaime Marquínez Ferrándiz <jaime.marquinez.ferrandiz@gmail.com>
Date: Wed, 29 Jan 2014 18:03:32 +0100
[bloomberg] Fix ooyala url extraction
Added a helper method to InfoExtractor for searching the ‘twitter:player’ meta property.
Now the OoyalaIE also recognizes the ‘ec’ parameter in the url as the embed code.
Diffstat:
3 files changed, 7 insertions(+), 3 deletions(-)
diff --git a/youtube_dl/extractor/bloomberg.py b/youtube_dl/extractor/bloomberg.py
@@ -24,5 +24,5 @@ class BloombergIE(InfoExtractor):
mobj = re.match(self._VALID_URL, url)
name = mobj.group('name')
webpage = self._download_webpage(url, name)
- ooyala_code = self._search_regex(r'<source src="http://player.ooyala.com/player/[^/]+/([^".]+)', webpage, u'ooyala url')
- return OoyalaIE._build_url_result(ooyala_code)
+ ooyala_url = self._twitter_search_player(webpage)
+ return self.url_result(ooyala_url, OoyalaIE.ie_key())
diff --git a/youtube_dl/extractor/common.py b/youtube_dl/extractor/common.py
@@ -465,6 +465,10 @@ class InfoExtractor(object):
}
return RATING_TABLE.get(rating.lower(), None)
+ def _twitter_search_player(self, html):
+ return self._html_search_meta('twitter:player', html,
+ 'twitter card player')
+
def _sort_formats(self, formats):
if not formats:
raise ExtractorError(u'No video formats found')
diff --git a/youtube_dl/extractor/ooyala.py b/youtube_dl/extractor/ooyala.py
@@ -5,7 +5,7 @@ from .common import InfoExtractor
from ..utils import unescapeHTML
class OoyalaIE(InfoExtractor):
- _VALID_URL = r'https?://.+?\.ooyala\.com/.*?embedCode=(?P<id>.+?)(&|$)'
+ _VALID_URL = r'https?://.+?\.ooyala\.com/.*?(?:embedCode|ec)=(?P<id>.+?)(&|$)'
_TEST = {
# From http://it.slashdot.org/story/13/04/25/178216/recovering-data-from-broken-hard-drives-and-ssds-video