mirror of
https://github.com/ytdl-org/youtube-dl.git
synced 2024-01-07 17:16:08 +00:00
parent
f631b55791
commit
06d0ad9a4e
|
@ -1,3 +1,10 @@
|
||||||
|
version <unreleased>
|
||||||
|
|
||||||
|
Extractors
|
||||||
|
+ [generic] Support Brightcove videos in <iframe> (#12482)
|
||||||
|
+ [brightcove] Support URLs with bcpid instead of playerID (#12482)
|
||||||
|
|
||||||
|
|
||||||
version 2017.04.17
|
version 2017.04.17
|
||||||
|
|
||||||
Extractors
|
Extractors
|
||||||
|
|
|
@ -131,6 +131,12 @@ class BrightcoveLegacyIE(InfoExtractor):
|
||||||
},
|
},
|
||||||
'playlist_mincount': 10,
|
'playlist_mincount': 10,
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
# playerID inferred from bcpid
|
||||||
|
# from http://www.un.org/chinese/News/story.asp?NewsID=27724
|
||||||
|
'url': 'https://link.brightcove.com/services/player/bcpid1722935254001/?bctid=5360463607001&autoStart=false&secureConnections=true&width=650&height=350',
|
||||||
|
'only_matching': True, # Tested in GenericIE
|
||||||
|
}
|
||||||
]
|
]
|
||||||
FLV_VCODECS = {
|
FLV_VCODECS = {
|
||||||
1: 'SORENSON',
|
1: 'SORENSON',
|
||||||
|
@ -266,9 +272,13 @@ class BrightcoveLegacyIE(InfoExtractor):
|
||||||
if matches:
|
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]))
|
||||||
|
|
||||||
|
matches = re.findall(r'(customBC\.createVideo\(.+?\);)', webpage)
|
||||||
|
if matches:
|
||||||
return list(filter(None, [
|
return list(filter(None, [
|
||||||
cls._build_brighcove_url_from_js(custom_bc)
|
cls._build_brighcove_url_from_js(custom_bc)
|
||||||
for custom_bc in re.findall(r'(customBC\.createVideo\(.+?\);)', webpage)]))
|
for custom_bc in matches]))
|
||||||
|
return [url for _, url in re.findall(
|
||||||
|
r'<iframe[^>]+src=([\'"])((?:https?:)?//link\.brightcove\.com/services/player/(?!\1).+)\1', webpage)]
|
||||||
|
|
||||||
def _real_extract(self, url):
|
def _real_extract(self, url):
|
||||||
url, smuggled_data = unsmuggle_url(url, {})
|
url, smuggled_data = unsmuggle_url(url, {})
|
||||||
|
@ -285,6 +295,10 @@ class BrightcoveLegacyIE(InfoExtractor):
|
||||||
if videoPlayer:
|
if videoPlayer:
|
||||||
# We set the original url as the default 'Referer' header
|
# We set the original url as the default 'Referer' header
|
||||||
referer = smuggled_data.get('Referer', url)
|
referer = smuggled_data.get('Referer', url)
|
||||||
|
if 'playerID' not in query:
|
||||||
|
mobj = re.search(r'/bcpid(\d+)', url)
|
||||||
|
if mobj is not None:
|
||||||
|
query['playerID'] = [mobj.group(1)]
|
||||||
return self._get_video_info(
|
return self._get_video_info(
|
||||||
videoPlayer[0], query, referer=referer)
|
videoPlayer[0], query, referer=referer)
|
||||||
elif 'playerKey' in query:
|
elif 'playerKey' in query:
|
||||||
|
|
|
@ -430,6 +430,22 @@ class GenericIE(InfoExtractor):
|
||||||
'skip_download': True, # m3u8 download
|
'skip_download': True, # m3u8 download
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
# Brightcove video in <iframe>
|
||||||
|
'url': 'http://www.un.org/chinese/News/story.asp?NewsID=27724',
|
||||||
|
'md5': '36d74ef5e37c8b4a2ce92880d208b968',
|
||||||
|
'info_dict': {
|
||||||
|
'id': '5360463607001',
|
||||||
|
'ext': 'mp4',
|
||||||
|
'title': '叙利亚失明儿童在废墟上演唱《心跳》 呼吁获得正常童年生活',
|
||||||
|
'description': '联合国儿童基金会中东和北非区域大使、作曲家扎德·迪拉尼(Zade Dirani)在3月15日叙利亚冲突爆发7周年纪念日之际发布了为叙利亚谱写的歌曲《心跳》(HEARTBEAT),为受到六年冲突影响的叙利亚儿童发出强烈呐喊,呼吁世界做出共同努力,使叙利亚儿童重新获得享有正常童年生活的权利。',
|
||||||
|
'uploader': 'United Nations',
|
||||||
|
'uploader_id': '1362235914001',
|
||||||
|
'timestamp': 1489593889,
|
||||||
|
'upload_date': '20170315',
|
||||||
|
},
|
||||||
|
'add_ie': ['BrightcoveLegacy'],
|
||||||
|
},
|
||||||
{
|
{
|
||||||
# Brightcove with alternative playerID key
|
# Brightcove with alternative playerID key
|
||||||
'url': 'http://www.nature.com/nmeth/journal/v9/n7/fig_tab/nmeth.2062_SV1.html',
|
'url': 'http://www.nature.com/nmeth/journal/v9/n7/fig_tab/nmeth.2062_SV1.html',
|
||||||
|
|
Loading…
Reference in a new issue