diff options
Diffstat (limited to 'youtube_dl/extractor/vimeo.py')
| -rw-r--r-- | youtube_dl/extractor/vimeo.py | 41 | 
1 files changed, 28 insertions, 13 deletions
| diff --git a/youtube_dl/extractor/vimeo.py b/youtube_dl/extractor/vimeo.py index cc9c8d018..512e06e2a 100644 --- a/youtube_dl/extractor/vimeo.py +++ b/youtube_dl/extractor/vimeo.py @@ -20,18 +20,31 @@ class VimeoIE(InfoExtractor):      _VALID_URL = r'(?P<proto>https?://)?(?:(?:www|player)\.)?vimeo(?P<pro>pro)?\.com/(?:(?:(?:groups|album)/[^/]+)|(?:.*?)/)?(?P<direct_link>play_redirect_hls\?clip_id=)?(?:videos?/)?(?P<id>[0-9]+)(?:[?].*)?$'      _NETRC_MACHINE = 'vimeo'      IE_NAME = u'vimeo' -    _TEST = { -        u'url': u'http://vimeo.com/56015672', -        u'file': u'56015672.mp4', -        u'md5': u'8879b6cc097e987f02484baf890129e5', -        u'info_dict': { -            u"upload_date": u"20121220",  -            u"description": u"This is a test case for youtube-dl.\nFor more information, see github.com/rg3/youtube-dl\nTest chars: \u2605 \" ' \u5e78 / \\ \u00e4 \u21ad \U0001d550",  -            u"uploader_id": u"user7108434",  -            u"uploader": u"Filippo Valsorda",  -            u"title": u"youtube-dl test video - \u2605 \" ' \u5e78 / \\ \u00e4 \u21ad \U0001d550" -        } -    } +    _TESTS = [ +        { +            u'url': u'http://vimeo.com/56015672', +            u'file': u'56015672.mp4', +            u'md5': u'8879b6cc097e987f02484baf890129e5', +            u'info_dict': { +                u"upload_date": u"20121220",  +                u"description": u"This is a test case for youtube-dl.\nFor more information, see github.com/rg3/youtube-dl\nTest chars: \u2605 \" ' \u5e78 / \\ \u00e4 \u21ad \U0001d550",  +                u"uploader_id": u"user7108434",  +                u"uploader": u"Filippo Valsorda",  +                u"title": u"youtube-dl test video - \u2605 \" ' \u5e78 / \\ \u00e4 \u21ad \U0001d550", +            }, +        }, +        { +            u'url': u'http://vimeopro.com/openstreetmapus/state-of-the-map-us-2013/video/68093876', +            u'file': u'68093876.mp4', +            u'md5': u'3b5ca6aa22b60dfeeadf50b72e44ed82', +            u'note': u'Vimeo Pro video (#1197)', +            u'info_dict': { +                u'uploader_id': u'openstreetmapus',  +                u'uploader': u'OpenStreetMap US',  +                u'title': u'Andy Allan - Putting the Carto into OpenStreetMap Cartography', +            }, +        }, +    ]      def _login(self):          (username, password) = self._get_login_info() @@ -83,7 +96,9 @@ class VimeoIE(InfoExtractor):          video_id = mobj.group('id')          if not mobj.group('proto'):              url = 'https://' + url -        if mobj.group('direct_link') or mobj.group('pro'): +        elif mobj.group('pro'): +            url = 'http://player.vimeo.com/video/' + video_id +        elif mobj.group('direct_link'):              url = 'https://vimeo.com/' + video_id          # Retrieve video webpage to extract further information | 
