Skip to content

Commit

Permalink
[vimeo] Fix rented videos (Closes #9830)
Browse files Browse the repository at this point in the history
  • Loading branch information
dstftw committed Jun 18, 2016
1 parent 7c05097 commit 6a55bb6
Showing 1 changed file with 14 additions and 1 deletion.
15 changes: 14 additions & 1 deletion youtube_dl/extractor/vimeo.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
from .common import InfoExtractor
from ..compat import (
compat_HTTPError,
compat_str,
compat_urlparse,
)
from ..utils import (
Expand All @@ -24,6 +25,7 @@
urlencode_postdata,
unescapeHTML,
parse_filesize,
try_get,
)


Expand Down Expand Up @@ -445,7 +447,18 @@ def _real_extract(self, url):
if config.get('view') == 4:
config = self._verify_player_video_password(url, video_id)

if '>You rented this title.<' in webpage:
def is_rented():
if '>You rented this title.<' in webpage:
return True
if config.get('user', {}).get('purchased'):
return True
label = try_get(
config, lambda x: x['video']['vod']['purchase_options'][0]['label_string'], compat_str)
if label and label.startswith('You rented this'):
return True
return False

if is_rented():
feature_id = config.get('video', {}).get('vod', {}).get('feature_id')
if feature_id and not data.get('force_feature_id', False):
return self.url_result(smuggle_url(
Expand Down

0 comments on commit 6a55bb6

Please sign in to comment.