diff options
| author | Jaime Marquínez Ferrándiz <jaime.marquinez.ferrandiz@gmail.com> | 2015-03-12 19:08:16 +0100 | 
|---|---|---|
| committer | Jaime Marquínez Ferrándiz <jaime.marquinez.ferrandiz@gmail.com> | 2015-03-12 19:08:16 +0100 | 
| commit | 3946864c8a752c068b188126013ddb747b53385d (patch) | |
| tree | 7ad13dccb8b6592b8ee1988ed422d21fb638aef3 | |
| parent | b84037013edf25866772ba12db3b0c55f94a3e12 (diff) | |
[vimeo] Use https for all vimeo.com urls
Unfortunately vimeopro.com doesn't support it yet.
| -rw-r--r-- | test/test_all_urls.py | 10 | ||||
| -rw-r--r-- | youtube_dl/extractor/vimeo.py | 36 | 
2 files changed, 23 insertions, 23 deletions
diff --git a/test/test_all_urls.py b/test/test_all_urls.py index e66264b4b..6ae168b7f 100644 --- a/test/test_all_urls.py +++ b/test/test_all_urls.py @@ -104,11 +104,11 @@ class TestAllURLsMatching(unittest.TestCase):          self.assertMatch(':tds', ['ComedyCentralShows'])      def test_vimeo_matching(self): -        self.assertMatch('http://vimeo.com/channels/tributes', ['vimeo:channel']) -        self.assertMatch('http://vimeo.com/channels/31259', ['vimeo:channel']) -        self.assertMatch('http://vimeo.com/channels/31259/53576664', ['vimeo']) -        self.assertMatch('http://vimeo.com/user7108434', ['vimeo:user']) -        self.assertMatch('http://vimeo.com/user7108434/videos', ['vimeo:user']) +        self.assertMatch('https://vimeo.com/channels/tributes', ['vimeo:channel']) +        self.assertMatch('https://vimeo.com/channels/31259', ['vimeo:channel']) +        self.assertMatch('https://vimeo.com/channels/31259/53576664', ['vimeo']) +        self.assertMatch('https://vimeo.com/user7108434', ['vimeo:user']) +        self.assertMatch('https://vimeo.com/user7108434/videos', ['vimeo:user'])          self.assertMatch('https://vimeo.com/user21297594/review/75524534/3c257a1b5d', ['vimeo:review'])      # https://github.com/rg3/youtube-dl/issues/1930 diff --git a/youtube_dl/extractor/vimeo.py b/youtube_dl/extractor/vimeo.py index fc720e7e7..bd09652cd 100644 --- a/youtube_dl/extractor/vimeo.py +++ b/youtube_dl/extractor/vimeo.py @@ -373,7 +373,7 @@ class VimeoIE(VimeoBaseInfoExtractor):              for tt in text_tracks:                  subtitles[tt['lang']] = [{                      'ext': 'vtt', -                    'url': 'http://vimeo.com' + tt['url'], +                    'url': 'https://vimeo.com' + tt['url'],                  }]          return { @@ -396,11 +396,11 @@ class VimeoIE(VimeoBaseInfoExtractor):  class VimeoChannelIE(InfoExtractor):      IE_NAME = 'vimeo:channel' -    _VALID_URL = r'https?://vimeo\.com/channels/(?P<id>[^/?#]+)/?(?:$|[?#])' +    _VALID_URL = r'https://vimeo\.com/channels/(?P<id>[^/?#]+)/?(?:$|[?#])'      _MORE_PAGES_INDICATOR = r'<a.+?rel="next"'      _TITLE_RE = r'<link rel="alternate"[^>]+?title="(.*?)"'      _TESTS = [{ -        'url': 'http://vimeo.com/channels/tributes', +        'url': 'https://vimeo.com/channels/tributes',          'info_dict': {              'id': 'tributes',              'title': 'Vimeo Tributes', @@ -459,7 +459,7 @@ class VimeoChannelIE(InfoExtractor):              if re.search(self._MORE_PAGES_INDICATOR, webpage, re.DOTALL) is None:                  break -        entries = [self.url_result('http://vimeo.com/%s' % video_id, 'Vimeo') +        entries = [self.url_result('https://vimeo.com/%s' % video_id, 'Vimeo')                     for video_id in video_ids]          return {'_type': 'playlist',                  'id': list_id, @@ -470,15 +470,15 @@ class VimeoChannelIE(InfoExtractor):      def _real_extract(self, url):          mobj = re.match(self._VALID_URL, url)          channel_id = mobj.group('id') -        return self._extract_videos(channel_id, 'http://vimeo.com/channels/%s' % channel_id) +        return self._extract_videos(channel_id, 'https://vimeo.com/channels/%s' % channel_id)  class VimeoUserIE(VimeoChannelIE):      IE_NAME = 'vimeo:user' -    _VALID_URL = r'https?://vimeo\.com/(?![0-9]+(?:$|[?#/]))(?P<name>[^/]+)(?:/videos|[#?]|$)' +    _VALID_URL = r'https://vimeo\.com/(?![0-9]+(?:$|[?#/]))(?P<name>[^/]+)(?:/videos|[#?]|$)'      _TITLE_RE = r'<a[^>]+?class="user">([^<>]+?)</a>'      _TESTS = [{ -        'url': 'http://vimeo.com/nkistudio/videos', +        'url': 'https://vimeo.com/nkistudio/videos',          'info_dict': {              'title': 'Nki',              'id': 'nkistudio', @@ -489,7 +489,7 @@ class VimeoUserIE(VimeoChannelIE):      def _real_extract(self, url):          mobj = re.match(self._VALID_URL, url)          name = mobj.group('name') -        return self._extract_videos(name, 'http://vimeo.com/%s' % name) +        return self._extract_videos(name, 'https://vimeo.com/%s' % name)  class VimeoAlbumIE(VimeoChannelIE): @@ -526,9 +526,9 @@ class VimeoAlbumIE(VimeoChannelIE):  class VimeoGroupsIE(VimeoAlbumIE):      IE_NAME = 'vimeo:group' -    _VALID_URL = r'(?:https?://)?vimeo\.com/groups/(?P<name>[^/]+)' +    _VALID_URL = r'https://vimeo\.com/groups/(?P<name>[^/]+)'      _TESTS = [{ -        'url': 'http://vimeo.com/groups/rolexawards', +        'url': 'https://vimeo.com/groups/rolexawards',          'info_dict': {              'id': 'rolexawards',              'title': 'Rolex Awards for Enterprise', @@ -542,13 +542,13 @@ class VimeoGroupsIE(VimeoAlbumIE):      def _real_extract(self, url):          mobj = re.match(self._VALID_URL, url)          name = mobj.group('name') -        return self._extract_videos(name, 'http://vimeo.com/groups/%s' % name) +        return self._extract_videos(name, 'https://vimeo.com/groups/%s' % name)  class VimeoReviewIE(InfoExtractor):      IE_NAME = 'vimeo:review'      IE_DESC = 'Review pages on vimeo' -    _VALID_URL = r'https?://vimeo\.com/[^/]+/review/(?P<id>[^/]+)' +    _VALID_URL = r'https://vimeo\.com/[^/]+/review/(?P<id>[^/]+)'      _TESTS = [{          'url': 'https://vimeo.com/user21297594/review/75524534/3c257a1b5d',          'md5': 'c507a72f780cacc12b2248bb4006d253', @@ -560,7 +560,7 @@ class VimeoReviewIE(InfoExtractor):          }      }, {          'note': 'video player needs Referer', -        'url': 'http://vimeo.com/user22258446/review/91613211/13f927e053', +        'url': 'https://vimeo.com/user22258446/review/91613211/13f927e053',          'md5': '6295fdab8f4bf6a002d058b2c6dce276',          'info_dict': {              'id': '91613211', @@ -582,11 +582,11 @@ class VimeoReviewIE(InfoExtractor):  class VimeoWatchLaterIE(VimeoBaseInfoExtractor, VimeoChannelIE):      IE_NAME = 'vimeo:watchlater'      IE_DESC = 'Vimeo watch later list, "vimeowatchlater" keyword (requires authentication)' -    _VALID_URL = r'https?://vimeo\.com/home/watchlater|:vimeowatchlater' +    _VALID_URL = r'https://vimeo\.com/home/watchlater|:vimeowatchlater'      _LOGIN_REQUIRED = True      _TITLE_RE = r'href="/home/watchlater".*?>(.*?)<'      _TESTS = [{ -        'url': 'http://vimeo.com/home/watchlater', +        'url': 'https://vimeo.com/home/watchlater',          'only_matching': True,      }] @@ -606,7 +606,7 @@ class VimeoWatchLaterIE(VimeoBaseInfoExtractor, VimeoChannelIE):  class VimeoLikesIE(InfoExtractor): -    _VALID_URL = r'https?://(?:www\.)?vimeo\.com/user(?P<id>[0-9]+)/likes/?(?:$|[?#]|sort:)' +    _VALID_URL = r'https://(?:www\.)?vimeo\.com/user(?P<id>[0-9]+)/likes/?(?:$|[?#]|sort:)'      IE_NAME = 'vimeo:likes'      IE_DESC = 'Vimeo user likes'      _TEST = { @@ -634,8 +634,8 @@ class VimeoLikesIE(InfoExtractor):          description = self._html_search_meta('description', webpage)          def _get_page(idx): -            page_url = '%s//vimeo.com/user%s/likes/page:%d/sort:date' % ( -                self.http_scheme(), user_id, idx + 1) +            page_url = 'https://vimeo.com/user%s/likes/page:%d/sort:date' % ( +                user_id, idx + 1)              webpage = self._download_webpage(                  page_url, user_id,                  note='Downloading page %d/%d' % (idx + 1, page_count))  | 
