mirror of
https://github.com/yt-dlp/yt-dlp.git
synced 2024-11-16 01:25:06 +00:00
[limelight] Improve embeds detection (closes #13895)
This commit is contained in:
parent
0c43a481b9
commit
4ef9152428
1 changed files with 13 additions and 6 deletions
|
@ -26,14 +26,16 @@ def _extract_urls(cls, webpage, source_url):
|
||||||
'Channel': 'channel',
|
'Channel': 'channel',
|
||||||
'ChannelList': 'channel_list',
|
'ChannelList': 'channel_list',
|
||||||
}
|
}
|
||||||
|
|
||||||
|
def smuggle(url):
|
||||||
|
return smuggle_url(url, {'source_url': source_url})
|
||||||
|
|
||||||
entries = []
|
entries = []
|
||||||
for kind, video_id in re.findall(
|
for kind, video_id in re.findall(
|
||||||
r'LimelightPlayer\.doLoad(Media|Channel|ChannelList)\(["\'](?P<id>[a-z0-9]{32})',
|
r'LimelightPlayer\.doLoad(Media|Channel|ChannelList)\(["\'](?P<id>[a-z0-9]{32})',
|
||||||
webpage):
|
webpage):
|
||||||
entries.append(cls.url_result(
|
entries.append(cls.url_result(
|
||||||
smuggle_url(
|
smuggle('limelight:%s:%s' % (lm[kind], video_id)),
|
||||||
'limelight:%s:%s' % (lm[kind], video_id),
|
|
||||||
{'source_url': source_url}),
|
|
||||||
'Limelight%s' % kind, video_id))
|
'Limelight%s' % kind, video_id))
|
||||||
for mobj in re.finditer(
|
for mobj in re.finditer(
|
||||||
# As per [1] class attribute should be exactly equal to
|
# As per [1] class attribute should be exactly equal to
|
||||||
|
@ -49,10 +51,15 @@ def _extract_urls(cls, webpage, source_url):
|
||||||
''', webpage):
|
''', webpage):
|
||||||
kind, video_id = mobj.group('kind'), mobj.group('id')
|
kind, video_id = mobj.group('kind'), mobj.group('id')
|
||||||
entries.append(cls.url_result(
|
entries.append(cls.url_result(
|
||||||
smuggle_url(
|
smuggle('limelight:%s:%s' % (kind, video_id)),
|
||||||
'limelight:%s:%s' % (kind, video_id),
|
|
||||||
{'source_url': source_url}),
|
|
||||||
'Limelight%s' % kind.capitalize(), video_id))
|
'Limelight%s' % kind.capitalize(), video_id))
|
||||||
|
# http://support.3playmedia.com/hc/en-us/articles/115009517327-Limelight-Embedding-the-Audio-Description-Plugin-with-the-Limelight-Player-on-Your-Web-Page)
|
||||||
|
for video_id in re.findall(
|
||||||
|
r'(?s)LimelightPlayerUtil\.embed\s*\(\s*{.*?\bmediaId["\']\s*:\s*["\'](?P<id>[a-z0-9]{32})',
|
||||||
|
webpage):
|
||||||
|
entries.append(cls.url_result(
|
||||||
|
smuggle('limelight:media:%s' % video_id),
|
||||||
|
LimelightMediaIE.ie_key(), video_id))
|
||||||
return entries
|
return entries
|
||||||
|
|
||||||
def _call_playlist_service(self, item_id, method, fatal=True, referer=None):
|
def _call_playlist_service(self, item_id, method, fatal=True, referer=None):
|
||||||
|
|
Loading…
Reference in a new issue