mirror of
https://github.com/ytdl-org/youtube-dl
synced 2024-09-12 15:26:23 +02:00
[vimeo] extract information for Vimeo Pro videos from http://player.vimeo.com/video/{video_id} (fixes #1197)
For some videos https://vimeo.com/{video_id} doesn't work
This commit is contained in:
parent
6c3e6e88d3
commit
a91b954bb4
@ -20,7 +20,8 @@ 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]+)(?:[?].*)?$'
|
_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'
|
_NETRC_MACHINE = 'vimeo'
|
||||||
IE_NAME = u'vimeo'
|
IE_NAME = u'vimeo'
|
||||||
_TEST = {
|
_TESTS = [
|
||||||
|
{
|
||||||
u'url': u'http://vimeo.com/56015672',
|
u'url': u'http://vimeo.com/56015672',
|
||||||
u'file': u'56015672.mp4',
|
u'file': u'56015672.mp4',
|
||||||
u'md5': u'8879b6cc097e987f02484baf890129e5',
|
u'md5': u'8879b6cc097e987f02484baf890129e5',
|
||||||
@ -29,9 +30,21 @@ class VimeoIE(InfoExtractor):
|
|||||||
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"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_id": u"user7108434",
|
||||||
u"uploader": u"Filippo Valsorda",
|
u"uploader": u"Filippo Valsorda",
|
||||||
u"title": u"youtube-dl test video - \u2605 \" ' \u5e78 / \\ \u00e4 \u21ad \U0001d550"
|
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):
|
def _login(self):
|
||||||
(username, password) = self._get_login_info()
|
(username, password) = self._get_login_info()
|
||||||
@ -83,7 +96,9 @@ class VimeoIE(InfoExtractor):
|
|||||||
video_id = mobj.group('id')
|
video_id = mobj.group('id')
|
||||||
if not mobj.group('proto'):
|
if not mobj.group('proto'):
|
||||||
url = 'https://' + url
|
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
|
url = 'https://vimeo.com/' + video_id
|
||||||
|
|
||||||
# Retrieve video webpage to extract further information
|
# Retrieve video webpage to extract further information
|
||||||
|
Loading…
Reference in New Issue
Block a user