summary refs log tree commit diff
diff options
context:
space:
mode:
authorJaime Marquínez Ferrándiz <jaime.marquinez.ferrandiz@gmail.com>2013-11-06 17:25:38 +0100
committerJaime Marquínez Ferrándiz <jaime.marquinez.ferrandiz@gmail.com>2013-11-06 17:31:47 +0100
commitfc4a0c2aec42035281771c74575d001f7e8adcd3 (patch)
treeead95eff783c3e8dd68397960a0778978c61636d
parenteeb165e674e07aaa798f69e15f16faa01bc8feaa (diff)
downloadyoutube-dl-fc4a0c2aec42035281771c74575d001f7e8adcd3.tar.gz
youtube-dl-fc4a0c2aec42035281771c74575d001f7e8adcd3.tar.xz
youtube-dl-fc4a0c2aec42035281771c74575d001f7e8adcd3.zip
[brightcove] Change the 'videoId' or 'videoID' field to '@videoPlayer' (fixes #1697)
It seems to be needed when using the htmlFederated page
-rw-r--r--youtube_dl/extractor/brightcove.py13
1 files changed, 13 insertions, 0 deletions
diff --git a/youtube_dl/extractor/brightcove.py b/youtube_dl/extractor/brightcove.py
index b3c3dc0fd..0c6e13b9c 100644
--- a/youtube_dl/extractor/brightcove.py
+++ b/youtube_dl/extractor/brightcove.py
@@ -42,6 +42,17 @@ class BrightcoveIE(InfoExtractor):
                 u'uploader': u'Oracle',
             },
         },
+        {
+            # From http://mashable.com/2013/10/26/thermoelectric-bracelet-lets-you-control-your-body-temperature/
+            u'url': u'http://c.brightcove.com/services/viewer/federated_f9?&playerID=1265504713001&publisherID=AQ%7E%7E%2CAAABBzUwv1E%7E%2CxP-xFHVUstiMFlNYfvF4G9yFnNaqCw_9&videoID=2750934548001',
+            u'info_dict': {
+                u'id': u'2750934548001',
+                u'ext': u'mp4',
+                u'title': u'This Bracelet Acts as a Personal Thermostat',
+                u'description': u'md5:547b78c64f4112766ccf4e151c20b6a0',
+                u'uploader': u'Mashable',
+            },
+        },
     ]
 
     @classmethod
@@ -86,6 +97,8 @@ class BrightcoveIE(InfoExtractor):
             return None
 
     def _real_extract(self, url):
+        # Change the 'videoId' or 'videoID' field to '@videoPlayer'
+        url = re.sub(r'(?<=[?&])videoI(d|D)', '%40videoPlayer', url)
         mobj = re.match(self._VALID_URL, url)
         query_str = mobj.group('query')
         query = compat_urlparse.parse_qs(query_str)