From: Philipp Hagemeister Date: Wed, 8 Jan 2014 21:42:52 +0000 (+0100) Subject: [vimeo] Support protocol-relative URLs X-Git-Url: http://git.oshgnacknak.de/?a=commitdiff_plain;h=3fabeaa1f49d6ce15d67bfe31cad80002cdc5c94;p=youtube-dl [vimeo] Support protocol-relative URLs --- diff --git a/youtube_dl/extractor/generic.py b/youtube_dl/extractor/generic.py index ff23161d7..a9023f38d 100644 --- a/youtube_dl/extractor/generic.py +++ b/youtube_dl/extractor/generic.py @@ -230,7 +230,7 @@ class GenericIE(InfoExtractor): # Look for embedded (iframe) Vimeo player mobj = re.search( - r']+?src="(https?://player.vimeo.com/video/.+?)"', webpage) + r']+?src="((?:https?:)?//player.vimeo.com/video/.+?)"', webpage) if mobj: player_url = unescapeHTML(mobj.group(1)) surl = smuggle_url(player_url, {'Referer': url}) diff --git a/youtube_dl/extractor/vimeo.py b/youtube_dl/extractor/vimeo.py index 540ca4fcc..193675549 100644 --- a/youtube_dl/extractor/vimeo.py +++ b/youtube_dl/extractor/vimeo.py @@ -24,7 +24,7 @@ class VimeoIE(InfoExtractor): # _VALID_URL matches Vimeo URLs _VALID_URL = r'''(?x) - (?Phttps?://)? + (?P(?:https?:)?//)? (?:(?:www|(?Pplayer))\.)? vimeo(?Ppro)?\.com/ (?:.*?/)? @@ -149,9 +149,6 @@ class VimeoIE(InfoExtractor): # Extract ID from URL mobj = re.match(self._VALID_URL, url) - if mobj is None: - raise ExtractorError('Invalid URL: %s' % url) - video_id = mobj.group('id') if mobj.group('pro') or mobj.group('player'): url = 'http://player.vimeo.com/video/' + video_id