0
0
Fork 0
mirror of https://github.com/yt-dlp/yt-dlp.git synced 2024-11-24 02:35:12 +00:00

Merge pull request #9041 from kasper93/master

[generic] Add support for LiveLeak embeds
This commit is contained in:
Yen Chi Hsuan 2016-04-15 17:23:55 +08:00
commit 66d40ae3a5
2 changed files with 26 additions and 0 deletions

View file

@ -60,6 +60,7 @@
from .jwplatform import JWPlatformIE from .jwplatform import JWPlatformIE
from .digiteka import DigitekaIE from .digiteka import DigitekaIE
from .instagram import InstagramIE from .instagram import InstagramIE
from .liveleak import LiveLeakIE
class GenericIE(InfoExtractor): class GenericIE(InfoExtractor):
@ -1140,6 +1141,18 @@ class GenericIE(InfoExtractor):
'upload_date': '20160409', 'upload_date': '20160409',
}, },
}, },
# LiveLeak embed
{
'url': 'http://www.wykop.pl/link/3088787/',
'md5': 'ace83b9ed19b21f68e1b50e844fdf95d',
'info_dict': {
'id': '874_1459135191',
'ext': 'mp4',
'title': 'Man shows poor quality of new apartment building',
'description': 'The wall is like a sand pile.',
'uploader': 'Lake8737',
}
},
] ]
def report_following_redirect(self, new_url): def report_following_redirect(self, new_url):
@ -1944,6 +1957,11 @@ def _playlist_from_matches(matches, getter=None, ie=None):
if instagram_embed_url is not None: if instagram_embed_url is not None:
return self.url_result(instagram_embed_url, InstagramIE.ie_key()) return self.url_result(instagram_embed_url, InstagramIE.ie_key())
# Look for LiveLeak embeds
liveleak_url = LiveLeakIE._extract_url(webpage)
if liveleak_url:
return self.url_result(liveleak_url, 'LiveLeak')
def check_video(vurl): def check_video(vurl):
if YoutubeIE.suitable(vurl): if YoutubeIE.suitable(vurl):
return True return True

View file

@ -53,6 +53,14 @@ class LiveLeakIE(InfoExtractor):
} }
}] }]
@staticmethod
def _extract_url(webpage):
mobj = re.search(
r'<iframe[^>]+src="https?://(?:\w+\.)?liveleak\.com/ll_embed\?(?:.*?)i=(?P<id>[\w_]+)(?:.*)',
webpage)
if mobj:
return 'http://www.liveleak.com/view?i=%s' % mobj.group('id')
def _real_extract(self, url): def _real_extract(self, url):
video_id = self._match_id(url) video_id = self._match_id(url)
webpage = self._download_webpage(url, video_id) webpage = self._download_webpage(url, video_id)