summary refs log tree commit diff
diff options
context:
space:
mode:
authorSergey M. <dstftw@gmail.com>2015-10-20 20:57:12 +0600
committerSergey M. <dstftw@gmail.com>2015-10-20 20:57:12 +0600
commit63a64948342ebfe46db8c258765e698a04a61904 (patch)
treea66dee7e439846b196931046543134457e9185fb
parentd65889bbc0a6b4a1eafe6a8c0e0e26170dc75586 (diff)
parent8bea039b8329074af9a95fe51e7622c8074f6218 (diff)
downloadyoutube-dl-63a64948342ebfe46db8c258765e698a04a61904.tar.gz
youtube-dl-63a64948342ebfe46db8c258765e698a04a61904.tar.xz
youtube-dl-63a64948342ebfe46db8c258765e698a04a61904.zip
Merge pull request #7242 from lalinsky/vimeo-seed-status
[vimeo] Fix error parsing
-rw-r--r--youtube_dl/extractor/vimeo.py11
1 files changed, 8 insertions, 3 deletions
diff --git a/youtube_dl/extractor/vimeo.py b/youtube_dl/extractor/vimeo.py
index 0f84656c0..2437ae1eb 100644
--- a/youtube_dl/extractor/vimeo.py
+++ b/youtube_dl/extractor/vimeo.py
@@ -133,7 +133,7 @@ class VimeoIE(VimeoBaseInfoExtractor):
                 'uploader_id': 'user18948128',
                 'uploader': 'Jaime Marquínez Ferrándiz',
                 'duration': 10,
-                'description': 'This is "youtube-dl password protected test video" by Jaime Marquínez Ferrándiz on Vimeo, the home for high quality videos and the people who love them.',
+                'description': 'This is "youtube-dl password protected test video" by Jaime Marquínez Ferrándiz on Vimeo, the home for high quality videos and the people\u2026',
             },
             'params': {
                 'videopassword': 'youtube-dl',
@@ -181,6 +181,11 @@ class VimeoIE(VimeoBaseInfoExtractor):
                 'uploader_id': 'user28849593',
             },
         },
+        {
+            'url': 'https://vimeo.com/109815029',
+            'note': 'Video not completely processed, "failed" seed status',
+            'only_matching': True,
+        },
     ]
 
     @staticmethod
@@ -273,13 +278,13 @@ class VimeoIE(VimeoBaseInfoExtractor):
         self.report_extraction(video_id)
 
         vimeo_config = self._search_regex(
-            r'vimeo\.config\s*=\s*({.+?});', webpage,
+            r'vimeo\.config\s*=\s*(?:({.+?})|_extend\([^,]+,\s+({.+?})\));', webpage,
             'vimeo config', default=None)
         if vimeo_config:
             seed_status = self._parse_json(vimeo_config, video_id).get('seed_status', {})
             if seed_status.get('state') == 'failed':
                 raise ExtractorError(
-                    '%s returned error: %s' % (self.IE_NAME, seed_status['title']),
+                    '%s said: %s' % (self.IE_NAME, seed_status['title']),
                     expected=True)
 
         # Extract the config JSON