aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergey M. <dstftw@gmail.com>2015-10-17 22:39:17 +0600
committerSergey M. <dstftw@gmail.com>2015-10-17 22:39:17 +0600
commit09670d5ba4f98e195837b9665205f0cfe3b0c80b (patch)
tree9b28f245660745ee23a5dddc094a691e95520dd0
parent350c9481336ac981eadc982b67ccdbc7e28ca0e3 (diff)
parent41a7b00f183844e93ae2ba46fb4021f257f3ce79 (diff)
downloadyoutube-dl-09670d5ba4f98e195837b9665205f0cfe3b0c80b.tar.xz
Merge pull request #7209 from lalinsky/vimeo-new-page
Extract config URL from (new?) React-based Vimeo's page
-rw-r--r--youtube_dl/extractor/vimeo.py9
1 files changed, 8 insertions, 1 deletions
diff --git a/youtube_dl/extractor/vimeo.py b/youtube_dl/extractor/vimeo.py
index fa1b22049..88e462a4d 100644
--- a/youtube_dl/extractor/vimeo.py
+++ b/youtube_dl/extractor/vimeo.py
@@ -286,7 +286,14 @@ class VimeoIE(VimeoBaseInfoExtractor):
try:
try:
config_url = self._html_search_regex(
- r' data-config-url="(.+?)"', webpage, 'config URL')
+ r' data-config-url="(.+?)"', webpage,
+ 'config URL', default=None)
+ if not config_url:
+ # New react-based page
+ vimeo_clip_page_config = self._search_regex(
+ r'vimeo\.clip_page_config\s*=\s*({.+?});', webpage,
+ 'vimeo clip page config')
+ config_url = self._parse_json(vimeo_clip_page_config, video_id)['player']['config_url']
config_json = self._download_webpage(config_url, video_id)
config = json.loads(config_json)
except RegexNotFoundError: