mirror of
				https://github.com/ytdl-org/youtube-dl.git
				synced 2025-10-29 09:26:20 -07:00 
			
		
		
		
	[vimeo] fix extraction for password protected player URLs(closes #18889)
This commit is contained in:
		| @@ -1,6 +1,7 @@ | ||||
| # coding: utf-8 | ||||
| from __future__ import unicode_literals | ||||
|  | ||||
| import base64 | ||||
| import json | ||||
| import re | ||||
| import itertools | ||||
| @@ -392,6 +393,22 @@ class VimeoIE(VimeoBaseInfoExtractor): | ||||
|                 'skip_download': True, | ||||
|             }, | ||||
|         }, | ||||
|         { | ||||
|             'url': 'http://player.vimeo.com/video/68375962', | ||||
|             'md5': 'aaf896bdb7ddd6476df50007a0ac0ae7', | ||||
|             'info_dict': { | ||||
|                 'id': '68375962', | ||||
|                 'ext': 'mp4', | ||||
|                 'title': 'youtube-dl password protected test video', | ||||
|                 'uploader_url': r're:https?://(?:www\.)?vimeo\.com/user18948128', | ||||
|                 'uploader_id': 'user18948128', | ||||
|                 'uploader': 'Jaime Marquínez Ferrándiz', | ||||
|                 'duration': 10, | ||||
|             }, | ||||
|             'params': { | ||||
|                 'videopassword': 'youtube-dl', | ||||
|             }, | ||||
|         }, | ||||
|         { | ||||
|             'url': 'http://vimeo.com/moogaloop.swf?clip_id=2539741', | ||||
|             'only_matching': True, | ||||
| @@ -452,7 +469,9 @@ class VimeoIE(VimeoBaseInfoExtractor): | ||||
|         password = self._downloader.params.get('videopassword') | ||||
|         if password is None: | ||||
|             raise ExtractorError('This video is protected by a password, use the --video-password option') | ||||
|         data = urlencode_postdata({'password': password}) | ||||
|         data = urlencode_postdata({ | ||||
|             'password': base64.b64encode(password.encode()), | ||||
|         }) | ||||
|         pass_url = url + '/check-password' | ||||
|         password_request = sanitized_Request(pass_url, data) | ||||
|         password_request.add_header('Content-Type', 'application/x-www-form-urlencoded') | ||||
|   | ||||
		Reference in New Issue
	
	Block a user