[vimeo] Fix ondemand videos and direct URLs with hash

Closes #1353, #1471
This commit is contained in:
pukkandan 2021-11-06 01:54:05 +05:30
parent 73673ccff3
commit 2a6f8475ac
No known key found for this signature in database
GPG Key ID: 0F00D95A001F4698

View File

@ -291,7 +291,7 @@ class VimeoIE(VimeoBaseInfoExtractor):
)? )?
vimeo(?:pro)?\.com/ vimeo(?:pro)?\.com/
(?!(?:channels|album|showcase)/[^/?#]+/?(?:$|[?#])|[^/]+/review/|ondemand/) (?!(?:channels|album|showcase)/[^/?#]+/?(?:$|[?#])|[^/]+/review/|ondemand/)
(?:.*?/)? (?:[^/]+/)*?
(?: (?:
(?: (?:
play_redirect_hls| play_redirect_hls|
@ -572,8 +572,17 @@ class VimeoIE(VimeoBaseInfoExtractor):
'only_matching': True, 'only_matching': True,
}, },
{ {
'note': 'Direct URL with hash',
'url': 'https://vimeo.com/160743502/abd0e13fb4', 'url': 'https://vimeo.com/160743502/abd0e13fb4',
'only_matching': True, 'info_dict': {
'id': '160743502',
'ext': 'mp4',
'uploader': 'Julian Tryba',
'uploader_id': 'aliniamedia',
'title': 'Harrisville New Hampshire',
'timestamp': 1459259666,
'upload_date': '20160329',
},
}, },
{ {
# requires passing unlisted_hash(a52724358e) to load_download_config request # requires passing unlisted_hash(a52724358e) to load_download_config request
@ -708,7 +717,8 @@ class VimeoIE(VimeoBaseInfoExtractor):
headers['Referer'] = url headers['Referer'] = url
# Extract ID from URL # Extract ID from URL
video_id, unlisted_hash = self._match_valid_url(url).groups() mobj = self._match_valid_url(url).groupdict()
video_id, unlisted_hash = mobj['id'], mobj.get('unlisted_hash')
if unlisted_hash: if unlisted_hash:
return self._extract_from_api(video_id, unlisted_hash) return self._extract_from_api(video_id, unlisted_hash)