1
0
mirror of https://github.com/yt-dlp/yt-dlp.git synced 2025-08-16 17:38:29 +00:00
This commit is contained in:
doe1080 2025-07-18 23:01:44 +09:00
parent d7d4c38072
commit 08c216c7ad

View File

@ -519,8 +519,7 @@ class VimeoIE(VimeoBaseInfoExtractor):
# Non-standard embedded Vimeo player # Non-standard embedded Vimeo player
r'<video[^>]+src=(["\'])(?P<url>(?:https?:)?//(?:www\.)?vimeo\.com/[0-9]+)\1', r'<video[^>]+src=(["\'])(?P<url>(?:https?:)?//(?:www\.)?vimeo\.com/[0-9]+)\1',
] ]
_TESTS = [ _TESTS = [{
{
'url': 'http://vimeo.com/56015672#at=0', 'url': 'http://vimeo.com/56015672#at=0',
'md5': '8879b6cc097e987f02484baf890129e5', 'md5': '8879b6cc097e987f02484baf890129e5',
'info_dict': { 'info_dict': {
@ -540,8 +539,7 @@ class VimeoIE(VimeoBaseInfoExtractor):
'format': 'best[protocol=https]', 'format': 'best[protocol=https]',
}, },
'skip': 'No longer available', 'skip': 'No longer available',
}, }, {
{
'url': 'https://player.vimeo.com/video/54469442', 'url': 'https://player.vimeo.com/video/54469442',
'md5': '619b811a4417aa4abe78dc653becf511', 'md5': '619b811a4417aa4abe78dc653becf511',
'note': 'Videos that embed the url in the player page', 'note': 'Videos that embed the url in the player page',
@ -550,17 +548,14 @@ class VimeoIE(VimeoBaseInfoExtractor):
'ext': 'mp4', 'ext': 'mp4',
'title': 'Kathy Sierra: Building the minimum Badass User, Business of Software 2012', 'title': 'Kathy Sierra: Building the minimum Badass User, Business of Software 2012',
'uploader': 'Business of Software', 'uploader': 'Business of Software',
'uploader_url': r're:https?://(?:www\.)?vimeo\.com/businessofsoftware',
'uploader_id': 'businessofsoftware', 'uploader_id': 'businessofsoftware',
'uploader_url': 'https://vimeo.com/businessofsoftware',
'duration': 3610, 'duration': 3610,
'thumbnail': r're:https?://i\.vimeocdn\.com/video/.+', 'thumbnail': r're:https?://i\.vimeocdn\.com/video/.+',
}, },
'params': { 'params': {'format': 'best[protocol=https]'},
'format': 'best[protocol=https]',
},
'expected_warnings': ['Failed to parse XML: not well-formed'], 'expected_warnings': ['Failed to parse XML: not well-formed'],
}, }, {
{
'url': 'http://vimeo.com/68375962', 'url': 'http://vimeo.com/68375962',
'md5': 'aaf896bdb7ddd6476df50007a0ac0ae7', 'md5': 'aaf896bdb7ddd6476df50007a0ac0ae7',
'note': 'Video protected with password', 'note': 'Video protected with password',
@ -572,8 +567,8 @@ class VimeoIE(VimeoBaseInfoExtractor):
'upload_date': '20130614', 'upload_date': '20130614',
'release_timestamp': 1371214555, 'release_timestamp': 1371214555,
'release_date': '20130614', 'release_date': '20130614',
'uploader_url': r're:https?://(?:www\.)?vimeo\.com/user18948128',
'uploader_id': 'user18948128', 'uploader_id': 'user18948128',
'uploader_url': 'https://vimeo.com/user18948128',
'uploader': 'Jaime Marquínez Ferrándiz', 'uploader': 'Jaime Marquínez Ferrándiz',
'duration': 10, 'duration': 10,
'comment_count': int, 'comment_count': int,
@ -585,8 +580,7 @@ class VimeoIE(VimeoBaseInfoExtractor):
'videopassword': 'youtube-dl', 'videopassword': 'youtube-dl',
}, },
'expected_warnings': ['Failed to parse XML: not well-formed'], 'expected_warnings': ['Failed to parse XML: not well-formed'],
}, }, {
{
'url': 'http://vimeo.com/channels/keypeele/75629013', 'url': 'http://vimeo.com/channels/keypeele/75629013',
'md5': '2f86a05afe9d7abc0b9126d229bbe15d', 'md5': '2f86a05afe9d7abc0b9126d229bbe15d',
'info_dict': { 'info_dict': {
@ -594,11 +588,11 @@ class VimeoIE(VimeoBaseInfoExtractor):
'ext': 'mp4', 'ext': 'mp4',
'title': 'Key & Peele: Terrorist Interrogation', 'title': 'Key & Peele: Terrorist Interrogation',
'description': 'md5:6173f270cd0c0119f22817204b3eb86c', 'description': 'md5:6173f270cd0c0119f22817204b3eb86c',
'uploader_url': r're:https?://(?:www\.)?vimeo\.com/atencio',
'uploader_id': 'atencio', 'uploader_id': 'atencio',
'uploader_url': 'https://vimeo.com/atencio',
'uploader': 'Peter Atencio', 'uploader': 'Peter Atencio',
'channel_id': 'keypeele', 'channel_id': 'keypeele',
'channel_url': r're:https?://(?:www\.)?vimeo\.com/channels/keypeele', 'channel_url': 'https://vimeo.com/channels/keypeele',
'timestamp': 1380339469, 'timestamp': 1380339469,
'upload_date': '20130928', 'upload_date': '20130928',
'duration': 187, 'duration': 187,
@ -609,8 +603,7 @@ class VimeoIE(VimeoBaseInfoExtractor):
}, },
'params': {'format': 'http-1080p'}, 'params': {'format': 'http-1080p'},
'expected_warnings': ['Failed to parse XML: not well-formed'], 'expected_warnings': ['Failed to parse XML: not well-formed'],
}, }, {
{
'url': 'http://vimeo.com/76979871', 'url': 'http://vimeo.com/76979871',
'note': 'Video with subtitles', 'note': 'Video with subtitles',
'info_dict': { 'info_dict': {
@ -622,8 +615,8 @@ class VimeoIE(VimeoBaseInfoExtractor):
'upload_date': '20131015', 'upload_date': '20131015',
'release_timestamp': 1381860509, 'release_timestamp': 1381860509,
'release_date': '20131015', 'release_date': '20131015',
'uploader_url': r're:https?://(?:www\.)?vimeo\.com/staff',
'uploader_id': 'staff', 'uploader_id': 'staff',
'uploader_url': 'https://vimeo.com/staff',
'uploader': 'Vimeo', 'uploader': 'Vimeo',
'duration': 62, 'duration': 62,
'comment_count': int, 'comment_count': int,
@ -640,8 +633,7 @@ class VimeoIE(VimeoBaseInfoExtractor):
'Ignoring subtitle tracks found in the HLS manifest', 'Ignoring subtitle tracks found in the HLS manifest',
'Failed to parse XML: not well-formed', 'Failed to parse XML: not well-formed',
], ],
}, }, {
{
# from https://www.ouya.tv/game/Pier-Solar-and-the-Great-Architects/ # from https://www.ouya.tv/game/Pier-Solar-and-the-Great-Architects/
'url': 'https://player.vimeo.com/video/98044508', 'url': 'https://player.vimeo.com/video/98044508',
'note': 'The js code contains assignments to the same variable as the config', 'note': 'The js code contains assignments to the same variable as the config',
@ -650,15 +642,13 @@ class VimeoIE(VimeoBaseInfoExtractor):
'ext': 'mp4', 'ext': 'mp4',
'title': 'Pier Solar OUYA Official Trailer', 'title': 'Pier Solar OUYA Official Trailer',
'uploader': 'Tulio Gonçalves', 'uploader': 'Tulio Gonçalves',
'uploader_url': r're:https?://(?:www\.)?vimeo\.com/user28849593',
'uploader_id': 'user28849593', 'uploader_id': 'user28849593',
'uploader_url': 'https://vimeo.com/user28849593',
'duration': 118, 'duration': 118,
'thumbnail': r're:https?://i\.vimeocdn\.com/video/.+', 'thumbnail': r're:https?://i\.vimeocdn\.com/video/.+',
}, },
'expected_warnings': ['Failed to parse XML: not well-formed'], 'expected_warnings': ['Failed to parse XML: not well-formed'],
'params': {'extractor_args': {'generic': {'impersonate': ['chrome']}}}, }, {
},
{
# contains Original format # contains Original format
'url': 'https://vimeo.com/33951933', 'url': 'https://vimeo.com/33951933',
# 'md5': '53c688fa95a55bf4b7293d37a89c5c53', # 'md5': '53c688fa95a55bf4b7293d37a89c5c53',
@ -667,8 +657,8 @@ class VimeoIE(VimeoBaseInfoExtractor):
'ext': 'mp4', 'ext': 'mp4',
'title': 'FOX CLASSICS - Forever Classic ID - A Full Minute', 'title': 'FOX CLASSICS - Forever Classic ID - A Full Minute',
'uploader': 'The DMCI', 'uploader': 'The DMCI',
'uploader_url': r're:https?://(?:www\.)?vimeo\.com/dmci',
'uploader_id': 'dmci', 'uploader_id': 'dmci',
'uploader_url': 'https://vimeo.com/dmci',
'timestamp': 1324361742, 'timestamp': 1324361742,
'upload_date': '20111220', 'upload_date': '20111220',
'description': 'md5:f37b4ad0f3ded6fa16f38ecde16c3c44', 'description': 'md5:f37b4ad0f3ded6fa16f38ecde16c3c44',
@ -681,8 +671,7 @@ class VimeoIE(VimeoBaseInfoExtractor):
}, },
# 'params': {'format': 'Original'}, # 'params': {'format': 'Original'},
'expected_warnings': ['Failed to parse XML: not well-formed'], 'expected_warnings': ['Failed to parse XML: not well-formed'],
}, }, {
{
'note': 'Contains source format not accessible in webpage', 'note': 'Contains source format not accessible in webpage',
'url': 'https://vimeo.com/393756517', 'url': 'https://vimeo.com/393756517',
# 'md5': 'c464af248b592190a5ffbb5d33f382b0', # 'md5': 'c464af248b592190a5ffbb5d33f382b0',
@ -705,8 +694,7 @@ class VimeoIE(VimeoBaseInfoExtractor):
}, },
# 'params': {'format': 'source'}, # 'params': {'format': 'source'},
'expected_warnings': ['Failed to parse XML: not well-formed'], 'expected_warnings': ['Failed to parse XML: not well-formed'],
}, }, {
{
# only available via https://vimeo.com/channels/tributes/6213729 and # only available via https://vimeo.com/channels/tributes/6213729 and
# not via https://vimeo.com/6213729 # not via https://vimeo.com/6213729
'url': 'https://vimeo.com/channels/tributes/6213729', 'url': 'https://vimeo.com/channels/tributes/6213729',
@ -715,26 +703,23 @@ class VimeoIE(VimeoBaseInfoExtractor):
'ext': 'mp4', 'ext': 'mp4',
'title': 'Vimeo Tribute: The Shining', 'title': 'Vimeo Tribute: The Shining',
'uploader': 'Casey Donahue', 'uploader': 'Casey Donahue',
'uploader_url': r're:https?://(?:www\.)?vimeo\.com/caseydonahue',
'uploader_id': 'caseydonahue', 'uploader_id': 'caseydonahue',
'channel_url': r're:https?://(?:www\.)?vimeo\.com/channels/tributes', 'uploader_url': 'https://vimeo.com/caseydonahue',
'channel_id': 'tributes', 'channel_id': 'tributes',
'channel_url': 'https://vimeo.com/channels/tributes',
'timestamp': 1250886430, 'timestamp': 1250886430,
'upload_date': '20090821', 'upload_date': '20090821',
'description': str, # FIXME: Dynamic SEO spam description 'description': str, # FIXME: Dynamic SEO spam description
'duration': 321, 'duration': 321,
'comment_count': int, 'comment_count': int,
'view_count': int, 'view_count': int,
'tags': 'count:4',
'thumbnail': r're:https?://i\.vimeocdn\.com/video/.+', 'thumbnail': r're:https?://i\.vimeocdn\.com/video/.+',
'like_count': int, 'like_count': int,
'tags': ['[the shining', 'vimeohq', 'cv', 'vimeo tribute]'],
},
'params': {
'skip_download': True,
}, },
'params': {'skip_download': True},
'expected_warnings': ['Failed to parse XML: not well-formed'], 'expected_warnings': ['Failed to parse XML: not well-formed'],
}, }, {
{
# redirects to ondemand extractor and should be passed through it # redirects to ondemand extractor and should be passed through it
# for successful extraction # for successful extraction
'url': 'https://vimeo.com/73445910', 'url': 'https://vimeo.com/73445910',
@ -743,26 +728,23 @@ class VimeoIE(VimeoBaseInfoExtractor):
'ext': 'mp4', 'ext': 'mp4',
'title': 'The Reluctant Revolutionary', 'title': 'The Reluctant Revolutionary',
'uploader': '10Ft Films', 'uploader': '10Ft Films',
'uploader_url': r're:https?://(?:www\.)?vimeo\.com/tenfootfilms', 'uploader_url': 'https://vimeo.com/tenfootfilms',
'uploader_id': 'tenfootfilms', 'uploader_id': 'tenfootfilms',
'description': 'md5:0fa704e05b04f91f40b7f3ca2e801384', 'description': 'md5:0fa704e05b04f91f40b7f3ca2e801384',
'upload_date': '20130830', 'upload_date': '20130830',
'timestamp': 1377853339, 'timestamp': 1377853339,
}, },
'params': { 'params': {'skip_download': True},
'skip_download': True,
},
'skip': 'this page is no longer available.', 'skip': 'this page is no longer available.',
}, }, {
{
'url': 'https://player.vimeo.com/video/68375962', 'url': 'https://player.vimeo.com/video/68375962',
'md5': 'aaf896bdb7ddd6476df50007a0ac0ae7', 'md5': 'aaf896bdb7ddd6476df50007a0ac0ae7',
'info_dict': { 'info_dict': {
'id': '68375962', 'id': '68375962',
'ext': 'mp4', 'ext': 'mp4',
'title': 'youtube-dl password protected test video', 'title': 'youtube-dl password protected test video',
'uploader_url': r're:https?://(?:www\.)?vimeo\.com/user18948128',
'uploader_id': 'user18948128', 'uploader_id': 'user18948128',
'uploader_url': 'https://vimeo.com/user18948128',
'uploader': 'Jaime Marquínez Ferrándiz', 'uploader': 'Jaime Marquínez Ferrándiz',
'duration': 10, 'duration': 10,
'thumbnail': r're:https?://i\.vimeocdn\.com/video/.+', 'thumbnail': r're:https?://i\.vimeocdn\.com/video/.+',
@ -772,25 +754,20 @@ class VimeoIE(VimeoBaseInfoExtractor):
'videopassword': 'youtube-dl', 'videopassword': 'youtube-dl',
}, },
'expected_warnings': ['Failed to parse XML: not well-formed'], 'expected_warnings': ['Failed to parse XML: not well-formed'],
}, }, {
{
'url': 'http://vimeo.com/moogaloop.swf?clip_id=2539741', 'url': 'http://vimeo.com/moogaloop.swf?clip_id=2539741',
'only_matching': True, 'only_matching': True,
}, }, {
{
'url': 'https://vimeo.com/109815029', 'url': 'https://vimeo.com/109815029',
'note': 'Video not completely processed, "failed" seed status', 'note': 'Video not completely processed, "failed" seed status',
'only_matching': True, 'only_matching': True,
}, }, {
{
'url': 'https://vimeo.com/groups/travelhd/videos/22439234', 'url': 'https://vimeo.com/groups/travelhd/videos/22439234',
'only_matching': True, 'only_matching': True,
}, }, {
{
'url': 'https://vimeo.com/album/2632481/video/79010983', 'url': 'https://vimeo.com/album/2632481/video/79010983',
'only_matching': True, 'only_matching': True,
}, }, {
{
'url': 'https://vimeo.com/showcase/3253534/video/119195465', 'url': 'https://vimeo.com/showcase/3253534/video/119195465',
'note': 'A video in a password protected album (showcase)', 'note': 'A video in a password protected album (showcase)',
'info_dict': { 'info_dict': {
@ -814,13 +791,11 @@ class VimeoIE(VimeoBaseInfoExtractor):
'videopassword': 'youtube-dl', 'videopassword': 'youtube-dl',
}, },
'expected_warnings': ['Failed to parse XML: not well-formed'], 'expected_warnings': ['Failed to parse XML: not well-formed'],
}, }, {
{
# source file returns 403: Forbidden # source file returns 403: Forbidden
'url': 'https://vimeo.com/7809605', 'url': 'https://vimeo.com/7809605',
'only_matching': True, 'only_matching': True,
}, }, {
{
'note': 'Direct URL with hash', 'note': 'Direct URL with hash',
'url': 'https://vimeo.com/160743502/abd0e13fb4', 'url': 'https://vimeo.com/160743502/abd0e13fb4',
'info_dict': { 'info_dict': {
@ -842,8 +817,7 @@ class VimeoIE(VimeoBaseInfoExtractor):
}, },
'params': {'skip_download': True}, 'params': {'skip_download': True},
'expected_warnings': ['Failed to parse XML: not well-formed'], 'expected_warnings': ['Failed to parse XML: not well-formed'],
}, }, {
{
'url': 'https://vimeo.com/138909882', 'url': 'https://vimeo.com/138909882',
'info_dict': { 'info_dict': {
'id': '138909882', 'id': '138909882',
@ -868,8 +842,7 @@ class VimeoIE(VimeoBaseInfoExtractor):
# 'format': 'source', # 'format': 'source',
}, },
'expected_warnings': ['Failed to parse XML: not well-formed'], 'expected_warnings': ['Failed to parse XML: not well-formed'],
}, }, {
{
'url': 'https://vimeo.com/channels/staffpicks/143603739', 'url': 'https://vimeo.com/channels/staffpicks/143603739',
'info_dict': { 'info_dict': {
'id': '143603739', 'id': '143603739',
@ -892,15 +865,13 @@ class VimeoIE(VimeoBaseInfoExtractor):
}, },
'params': {'skip_download': 'm3u8'}, 'params': {'skip_download': 'm3u8'},
'expected_warnings': ['Failed to parse XML: not well-formed'], 'expected_warnings': ['Failed to parse XML: not well-formed'],
}, }, {
{
# requires passing unlisted_hash(a52724358e) to load_download_config request # requires passing unlisted_hash(a52724358e) to load_download_config request
'url': 'https://vimeo.com/392479337/a52724358e', 'url': 'https://vimeo.com/392479337/a52724358e',
'only_matching': True, 'only_matching': True,
}, }, {
{
# similar, but all numeric: ID must be 581039021, not 9603038895 # similar, but all numeric: ID must be 581039021, not 9603038895
# issue #29690 # https://github.com/ytdl-org/youtube-dl/issues/29690
'url': 'https://vimeo.com/581039021/9603038895', 'url': 'https://vimeo.com/581039021/9603038895',
'info_dict': { 'info_dict': {
'id': '581039021', 'id': '581039021',
@ -918,12 +889,9 @@ class VimeoIE(VimeoBaseInfoExtractor):
'uploader_id': 'txwestcapital', 'uploader_id': 'txwestcapital',
'upload_date': '20210730', 'upload_date': '20210730',
}, },
'params': { 'params': {'skip_download': True},
'skip_download': True,
},
'expected_warnings': ['Failed to parse XML: not well-formed'], 'expected_warnings': ['Failed to parse XML: not well-formed'],
}, }, {
{
# chapters must be sorted, see: https://github.com/yt-dlp/yt-dlp/issues/5308 # chapters must be sorted, see: https://github.com/yt-dlp/yt-dlp/issues/5308
'url': 'https://player.vimeo.com/video/756714419', 'url': 'https://player.vimeo.com/video/756714419',
'info_dict': { 'info_dict': {
@ -955,8 +923,7 @@ class VimeoIE(VimeoBaseInfoExtractor):
'skip_download': 'm3u8', 'skip_download': 'm3u8',
}, },
'expected_warnings': ['Failed to parse XML: not well-formed'], 'expected_warnings': ['Failed to parse XML: not well-formed'],
}, }, {
{
# vimeo.com URL with unlisted hash and Original format # vimeo.com URL with unlisted hash and Original format
'url': 'https://vimeo.com/144579403/ec02229140', 'url': 'https://vimeo.com/144579403/ec02229140',
# 'md5': '6b662c2884e0373183fbde2a0d15cb78', # 'md5': '6b662c2884e0373183fbde2a0d15cb78',
@ -979,8 +946,7 @@ class VimeoIE(VimeoBaseInfoExtractor):
}, },
# 'params': {'format': 'Original'}, # 'params': {'format': 'Original'},
'expected_warnings': ['Failed to parse XML: not well-formed'], 'expected_warnings': ['Failed to parse XML: not well-formed'],
}, }, {
{
# player.vimeo.com URL with source format # player.vimeo.com URL with source format
'url': 'https://player.vimeo.com/video/859028877', 'url': 'https://player.vimeo.com/video/859028877',
# 'md5': '19ca3d2463441dee2d2f0671ac2916a2', # 'md5': '19ca3d2463441dee2d2f0671ac2916a2',
@ -997,16 +963,28 @@ class VimeoIE(VimeoBaseInfoExtractor):
# 'params': {'format': 'source'}, # 'params': {'format': 'source'},
'expected_warnings': ['Failed to parse XML: not well-formed'], 'expected_warnings': ['Failed to parse XML: not well-formed'],
'params': {'skip_download': 'm3u8'}, 'params': {'skip_download': 'm3u8'},
}, }, {
{
# user playlist alias -> https://vimeo.com/258705797 # user playlist alias -> https://vimeo.com/258705797
'url': 'https://vimeo.com/user26785108/newspiritualguide', 'url': 'https://vimeo.com/user26785108/newspiritualguide',
'only_matching': True, 'only_matching': True,
}, }]
# https://gettingthingsdone.com/workflowmap/
# vimeo embed with check-password page protected by Referer header
]
_WEBPAGE_TESTS = [{ _WEBPAGE_TESTS = [{
# Referer & password-protected
# https://github.com/yt-dlp/yt-dlp/commit/a1a460759815414c6194bc921ac77a5533b6e02e
'url': 'https://gettingthingsdone.com/workflowmap/',
'info_dict': {
'id': '105375912',
'ext': 'mp4',
'title': 'WORKFLOW MAP',
'duration': 1950,
'thumbnail': r're:https?://i\.vimeocdn\.com/video/.+',
'uploader': 'GTD',
'uploader_id': 'gettingthingsdone',
'uploader_url': 'https://vimeo.com/gettingthingsdone',
},
'expected_warnings': ['Failed to parse XML: not well-formed'],
'skip': 'Password protected',
}, {
'url': 'https://www.gsd.harvard.edu/event/i-m-pei-a-centennial-celebration/', 'url': 'https://www.gsd.harvard.edu/event/i-m-pei-a-centennial-celebration/',
'info_dict': { 'info_dict': {
'id': '855172304', 'id': '855172304',
@ -1399,8 +1377,8 @@ class VimeoOndemandIE(VimeoIE): # XXX: Do not subclass from concrete IE
'ext': 'mp4', 'ext': 'mp4',
'title': 'המעבדה - במאי יותם פלדמן', 'title': 'המעבדה - במאי יותם פלדמן',
'uploader': 'גם סרטים', 'uploader': 'גם סרטים',
'uploader_url': r're:https?://(?:www\.)?vimeo\.com/gumfilms',
'uploader_id': 'gumfilms', 'uploader_id': 'gumfilms',
'uploader_url': 'https://vimeo.com/gumfilms',
'description': 'md5:aeeba3dbd4d04b0fa98a4fdc9c639998', 'description': 'md5:aeeba3dbd4d04b0fa98a4fdc9c639998',
'upload_date': '20140906', 'upload_date': '20140906',
'timestamp': 1410032453, 'timestamp': 1410032453,
@ -1411,9 +1389,7 @@ class VimeoOndemandIE(VimeoIE): # XXX: Do not subclass from concrete IE
'view_count': int, 'view_count': int,
'like_count': int, 'like_count': int,
}, },
'params': { 'params': {'format': 'best[protocol=https]'},
'format': 'best[protocol=https]',
},
'expected_warnings': ['Failed to parse XML: not well-formed'], 'expected_warnings': ['Failed to parse XML: not well-formed'],
}, { }, {
# requires Referer to be passed along with og:video:url # requires Referer to be passed along with og:video:url
@ -1423,8 +1399,8 @@ class VimeoOndemandIE(VimeoIE): # XXX: Do not subclass from concrete IE
'ext': 'mp4', 'ext': 'mp4',
'title': 'Rävlock, rätt läte på rätt plats', 'title': 'Rävlock, rätt läte på rätt plats',
'uploader': 'Lindroth & Norin', 'uploader': 'Lindroth & Norin',
'uploader_url': r're:https?://(?:www\.)?vimeo\.com/lindrothnorin',
'uploader_id': 'lindrothnorin', 'uploader_id': 'lindrothnorin',
'uploader_url': 'https://vimeo.com/lindrothnorin',
'description': 'md5:c3c46a90529612c8279fb6af803fc0df', 'description': 'md5:c3c46a90529612c8279fb6af803fc0df',
'upload_date': '20150502', 'upload_date': '20150502',
'timestamp': 1430586422, 'timestamp': 1430586422,
@ -1435,9 +1411,7 @@ class VimeoOndemandIE(VimeoIE): # XXX: Do not subclass from concrete IE
'like_count': int, 'like_count': int,
'tags': 'count:5', 'tags': 'count:5',
}, },
'params': { 'params': {'skip_download': True},
'skip_download': True,
},
'expected_warnings': ['Failed to parse XML: not well-formed'], 'expected_warnings': ['Failed to parse XML: not well-formed'],
}, { }, {
'url': 'https://vimeo.com/ondemand/nazmaalik', 'url': 'https://vimeo.com/ondemand/nazmaalik',
@ -1550,9 +1524,7 @@ class VimeoAlbumIE(VimeoBaseInfoExtractor):
'id': '3253534', 'id': '3253534',
}, },
'playlist_count': 1, 'playlist_count': 1,
'params': { 'params': {'videopassword': 'youtube-dl'},
'videopassword': 'youtube-dl',
},
}] }]
_PAGE_SIZE = 100 _PAGE_SIZE = 100
@ -1695,9 +1667,7 @@ class VimeoReviewIE(VimeoBaseInfoExtractor):
'uploader': 'TMB', 'uploader': 'TMB',
'uploader_id': 'user37284429', 'uploader_id': 'user37284429',
}, },
'params': { 'params': {'videopassword': 'holygrail'},
'videopassword': 'holygrail',
},
'skip': 'video gone', 'skip': 'video gone',
}] }]
@ -1816,8 +1786,8 @@ class VimeoProIE(VimeoBaseInfoExtractor):
'info_dict': { 'info_dict': {
'id': '68093876', 'id': '68093876',
'ext': 'mp4', 'ext': 'mp4',
'uploader_url': r're:https?://(?:www\.)?vimeo\.com/openstreetmapus',
'uploader_id': 'openstreetmapus', 'uploader_id': 'openstreetmapus',
'uploader_url': 'https://vimeo.com/openstreetmapus',
'uploader': 'OpenStreetMap US', 'uploader': 'OpenStreetMap US',
'title': 'Andy Allan - Putting the Carto into OpenStreetMap Cartography', 'title': 'Andy Allan - Putting the Carto into OpenStreetMap Cartography',
'description': 'md5:8cf69a1a435f2d763f4adf601e9c3125', 'description': 'md5:8cf69a1a435f2d763f4adf601e9c3125',
@ -1831,9 +1801,7 @@ class VimeoProIE(VimeoBaseInfoExtractor):
'release_timestamp': 1370907556, 'release_timestamp': 1370907556,
'release_date': '20130610', 'release_date': '20130610',
}, },
'params': { 'params': {'format': 'best[protocol=https]'},
'format': 'best[protocol=https]',
},
'expected_warnings': ['Failed to parse XML: not well-formed'], 'expected_warnings': ['Failed to parse XML: not well-formed'],
}, { }, {
# password-protected VimeoPro page with Vimeo player embed # password-protected VimeoPro page with Vimeo player embed