diff options
Diffstat (limited to 'youtube_dl/extractor/brightcove.py')
| -rw-r--r-- | youtube_dl/extractor/brightcove.py | 10 | 
1 files changed, 7 insertions, 3 deletions
| diff --git a/youtube_dl/extractor/brightcove.py b/youtube_dl/extractor/brightcove.py index 4351565d5..4ba3f7c42 100644 --- a/youtube_dl/extractor/brightcove.py +++ b/youtube_dl/extractor/brightcove.py @@ -14,6 +14,7 @@ from ..utils import (      compat_urllib_request,      ExtractorError, +    unsmuggle_url,  ) @@ -121,6 +122,8 @@ class BrightcoveIE(InfoExtractor):              return None      def _real_extract(self, url): +        url, smuggled_data = unsmuggle_url(url, {}) +          # Change the 'videoId' and others field to '@videoPlayer'          url = re.sub(r'(?<=[?&])(videoI(d|D)|bctid)', '%40videoPlayer', url)          # Change bckey (used by bcove.me urls) to playerKey @@ -131,9 +134,10 @@ class BrightcoveIE(InfoExtractor):          videoPlayer = query.get('@videoPlayer')          if videoPlayer: -            return self._get_video_info(videoPlayer[0], query_str, query, -                # We set the original url as the default 'Referer' header -                referer=url) +            # We set the original url as the default 'Referer' header +            referer = smuggled_data.get('Referer', url) +            return self._get_video_info( +                videoPlayer[0], query_str, query, referer=referer)          else:              player_key = query['playerKey']              return self._get_playlist_info(player_key[0]) | 
