diff --git a/youtube_dl/extractor/vimeo.py b/youtube_dl/extractor/vimeo.py index ddf375c6c218..b5b44a79a263 100644 --- a/youtube_dl/extractor/vimeo.py +++ b/youtube_dl/extractor/vimeo.py @@ -2,14 +2,12 @@ from __future__ import unicode_literals import base64 -import functools import json import re import itertools from .common import InfoExtractor from ..compat import ( - compat_kwargs, compat_HTTPError, compat_str, compat_urlparse, @@ -21,7 +19,6 @@ int_or_none, merge_dicts, NO_DEFAULT, - OnDemandPagedList, parse_filesize, qualities, RegexNotFoundError, @@ -101,13 +98,6 @@ def _extract_xsrft_and_vuid(self, webpage): webpage, 'vuid', group='vuid') return xsrft, vuid - def _extract_vimeo_config(self, webpage, video_id, *args, **kwargs): - vimeo_config = self._search_regex( - r'vimeo\.config\s*=\s*(?:({.+?})|_extend\([^,]+,\s+({.+?})\));', - webpage, 'vimeo config', *args, **compat_kwargs(kwargs)) - if vimeo_config: - return self._parse_json(vimeo_config, video_id) - def _set_vimeo_cookie(self, name, value): self._set_cookie('vimeo.com', name, value) @@ -263,7 +253,7 @@ class VimeoIE(VimeoBaseInfoExtractor): \. )? vimeo(?Ppro)?\.com/ - (?!(?:channels|album|showcase)/[^/?#]+/?(?:$|[?#])|[^/]+/review/|ondemand/) + (?!(?:channels|album)/[^/?#]+/?(?:$|[?#])|[^/]+/review/|ondemand/) (?:.*?/)? (?: (?: @@ -590,9 +580,11 @@ def _real_extract(self, url): # and latter we extract those that are Vimeo specific. self.report_extraction(video_id) - vimeo_config = self._extract_vimeo_config(webpage, video_id, default=None) + vimeo_config = self._search_regex( + r'vimeo\.config\s*=\s*(?:({.+?})|_extend\([^,]+,\s+({.+?})\));', webpage, + 'vimeo config', default=None) if vimeo_config: - seed_status = vimeo_config.get('seed_status', {}) + seed_status = self._parse_json(vimeo_config, video_id).get('seed_status', {}) if seed_status.get('state') == 'failed': raise ExtractorError( '%s said: %s' % (self.IE_NAME, seed_status['title']), @@ -913,7 +905,7 @@ def _real_extract(self, url): class VimeoAlbumIE(VimeoChannelIE): IE_NAME = 'vimeo:album' - _VALID_URL = r'https://vimeo\.com/(?:album|showcase)/(?P\d+)(?:$|[?#]|/(?!video))' + _VALID_URL = r'https://vimeo\.com/album/(?P\d+)(?:$|[?#]|/(?!video))' _TITLE_RE = r'