diff --git a/youtube_dl/extractor/vimeo.py b/youtube_dl/extractor/vimeo.py index 9aec8a2ab..e13f09581 100644 --- a/youtube_dl/extractor/vimeo.py +++ b/youtube_dl/extractor/vimeo.py @@ -482,10 +482,15 @@ class VimeoIE(VimeoBaseInfoExtractor): r']+?src=(["\'])(?P(?:https?:)?//(?:www\.)?vimeo\.com/moogaloop\.swf.+?)\1', # Look more for non-standard embedded Vimeo player r']+src=(["\'])(?P(?:https?:)?//(?:www\.)?vimeo\.com/[0-9]+)\1', + # Look for JS embedded Vimeo player + r']+vimeo-id="(?P\d+)"', ) for embed_re in PLAIN_EMBED_RE: for mobj in re.finditer(embed_re, webpage): - urls.append(mobj.group('url')) + if mobj.group('id'): + urls.append('https://player.vimeo.com/video/' + mobj.group('id')) + else: + urls.append(mobj.group('url')) return urls @staticmethod