about summary refs log tree commit diff
diff options
context:
space:
mode:
authorSergey M․ <dstftw@gmail.com>2015-03-27 03:05:08 +0600
committerSergey M․ <dstftw@gmail.com>2015-03-27 03:05:08 +0600
commit998e6cdba01ff54e2009d50c3026e7af0bb1c11a (patch)
tree85e7dd6c966a644e52227c8a2c41a6d933a95918
parent157e9e5aa5e2e461ec0e4f1e0875125a440d6d60 (diff)
downloadyoutube-dl-998e6cdba01ff54e2009d50c3026e7af0bb1c11a.tar.gz
youtube-dl-998e6cdba01ff54e2009d50c3026e7af0bb1c11a.tar.xz
youtube-dl-998e6cdba01ff54e2009d50c3026e7af0bb1c11a.zip
[vimeo] Capture and output error message (#5294)
-rw-r--r--youtube_dl/extractor/vimeo.py10
1 files changed, 10 insertions, 0 deletions
diff --git a/youtube_dl/extractor/vimeo.py b/youtube_dl/extractor/vimeo.py
index bd09652cd..28bcc89cd 100644
--- a/youtube_dl/extractor/vimeo.py
+++ b/youtube_dl/extractor/vimeo.py
@@ -244,6 +244,16 @@ class VimeoIE(VimeoBaseInfoExtractor):
         # and latter we extract those that are Vimeo specific.
         self.report_extraction(video_id)
 
+        vimeo_config = self._search_regex(
+            r'vimeo\.config\s*=\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']),
+                    expected=True)
+
         # Extract the config JSON
         try:
             try: