parse_qs,
sanitized_Request,
smuggle_url,
- std_headers,
str_or_none,
try_get,
unified_timestamp,
for f_id, m_url in sep_manifest_urls:
if files_type == 'hls':
fmts, subs = self._extract_m3u8_formats_and_subtitles(
- m_url, video_id, 'mp4',
- 'm3u8' if is_live else 'm3u8_native', m3u8_id=f_id,
+ m_url, video_id, 'mp4', live=is_live, m3u8_id=f_id,
note='Downloading %s m3u8 information' % cdn_name,
fatal=False)
formats.extend(fmts)
'url': 'https://vimeo.com/392479337/a52724358e',
'only_matching': True,
},
+ {
+ # similar, but all numeric: ID must be 581039021, not 9603038895
+ # issue #29690
+ 'url': 'https://vimeo.com/581039021/9603038895',
+ 'info_dict': {
+ 'id': '581039021',
+ # these have to be provided but we don't care
+ 'ext': 'mp4',
+ 'timestamp': 1627621014,
+ 'title': 're:.+',
+ 'uploader_id': 're:.+',
+ 'uploader': 're:.+',
+ 'upload_date': r're:\d+',
+ },
+ 'params': {
+ 'skip_download': True,
+ },
+ }
# https://gettingthingsdone.com/workflowmap/
# vimeo embed with check-password page protected by Referer header
]
def _real_extract(self, url):
url, data = unsmuggle_url(url, {})
- headers = std_headers.copy()
+ headers = self.get_param('http_headers').copy()
if 'http_headers' in data:
headers.update(data['http_headers'])
if 'Referer' not in headers: