mirror of
https://github.com/yt-dlp/yt-dlp.git
synced 2024-11-27 18:41:29 +00:00
Brightcove extractor: support customBC.createVideo(...); method
found in http://www.americanbar.org/groups/family_law.html and http://america.aljazeera.com/watch/shows/america-tonight/2015/6/exclusive-hunting-isil-with-the-pkk.html
This commit is contained in:
parent
78e2b74bb9
commit
b4e1576aee
|
@ -188,8 +188,20 @@ def _extract_brightcove_urls(cls, webpage):
|
||||||
[^>]*?>\s*<param\s+name="movie"\s+value="https?://[^/]*brightcove\.com/
|
[^>]*?>\s*<param\s+name="movie"\s+value="https?://[^/]*brightcove\.com/
|
||||||
).+?>\s*</object>''',
|
).+?>\s*</object>''',
|
||||||
webpage)
|
webpage)
|
||||||
|
if matches:
|
||||||
return list(filter(None, [cls._build_brighcove_url(m) for m in matches]))
|
return list(filter(None, [cls._build_brighcove_url(m) for m in matches]))
|
||||||
|
|
||||||
|
custombcs = re.findall(r'customBC.\createVideo\((.+?)\);',webpage)
|
||||||
|
if custombcs:
|
||||||
|
urls = []
|
||||||
|
for match in custombcs:
|
||||||
|
# brightcove playerkey begins with AQ and is 50 characters in length,
|
||||||
|
# however it's appended to itself in places, so truncate.
|
||||||
|
f = re.search(r'["\'](AQ[^"\']{48}).*?["\'](\d+)["\']', match)
|
||||||
|
if f:
|
||||||
|
urls.append('brightcove:playerKey='+f.group(1)+'&%40videoPlayer='+f.group(2))
|
||||||
|
return urls
|
||||||
|
|
||||||
def _real_extract(self, url):
|
def _real_extract(self, url):
|
||||||
url, smuggled_data = unsmuggle_url(url, {})
|
url, smuggled_data = unsmuggle_url(url, {})
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue