diff options
| author | Sergey M․ <dstftw@gmail.com> | 2015-06-27 23:00:27 +0600 | 
|---|---|---|
| committer | Sergey M․ <dstftw@gmail.com> | 2015-06-27 23:00:27 +0600 | 
| commit | 81103ef35d5148f52229f35e91b99ff8d9218b10 (patch) | |
| tree | f8773a5541569a5cb92a8fb267c3745c0b059deb | |
| parent | 0eb5c1c62a2535ceaf10202e3feba8e556065f15 (diff) | |
[smotri] Fix password protected video extraction
| -rw-r--r-- | youtube_dl/extractor/smotri.py | 11 | 
1 files changed, 10 insertions, 1 deletions
| diff --git a/youtube_dl/extractor/smotri.py b/youtube_dl/extractor/smotri.py index 24746a09a..b8fa0457d 100644 --- a/youtube_dl/extractor/smotri.py +++ b/youtube_dl/extractor/smotri.py @@ -152,6 +152,10 @@ class SmotriIE(InfoExtractor):              'getvideoinfo': '1',          } +        video_password = self._downloader.params.get('videopassword', None) +        if video_password: +            video_form['pass'] = hashlib.md5(video_password.encode('utf-8')).hexdigest() +          request = compat_urllib_request.Request(              'http://smotri.com/video/view/url/bot/', compat_urllib_parse.urlencode(video_form))          request.add_header('Content-Type', 'application/x-www-form-urlencoded') @@ -161,13 +165,18 @@ class SmotriIE(InfoExtractor):          video_url = video.get('_vidURL') or video.get('_vidURL_mp4')          if not video_url: -            if video.get('_moderate_no') or not video.get('moderated'): +            if video.get('_moderate_no'):                  raise ExtractorError(                      'Video %s has not been approved by moderator' % video_id, expected=True)              if video.get('error'):                  raise ExtractorError('Video %s does not exist' % video_id, expected=True) +            if video.get('_pass_protected') == 1: +                msg = ('Invalid video password' if video_password +                       else 'This video is protected by a password, use the --video-password option') +                raise ExtractorError(msg, expected=True) +          title = video['title']          thumbnail = video['_imgURL']          upload_date = unified_strdate(video['added']) | 
