diff options
| author | Jaime Marquínez Ferrándiz <jaime.marquinez.ferrandiz@gmail.com> | 2014-04-29 14:57:38 +0200 | 
|---|---|---|
| committer | Jaime Marquínez Ferrándiz <jaime.marquinez.ferrandiz@gmail.com> | 2014-04-29 14:57:38 +0200 | 
| commit | 57b8d84cd9e0bbd67fb6fc51ebea3732acbf2a25 (patch) | |
| tree | aa26aaf7dfc03b8f8ad12096ad3ae4deb9627089 | |
| parent | 65e4ad5bfefa83e4f57f0844ff7cd8f94f8ffd84 (diff) | |
[5min] Raise an error if the 'success' field is False
For example for georestricted videos.
| -rw-r--r-- | youtube_dl/extractor/fivemin.py | 13 | 
1 files changed, 11 insertions, 2 deletions
| diff --git a/youtube_dl/extractor/fivemin.py b/youtube_dl/extractor/fivemin.py index b596bf587..3a50bab5c 100644 --- a/youtube_dl/extractor/fivemin.py +++ b/youtube_dl/extractor/fivemin.py @@ -6,6 +6,7 @@ from .common import InfoExtractor  from ..utils import (      compat_str,      compat_urllib_parse, +    ExtractorError,  ) @@ -58,9 +59,17 @@ class FiveMinIE(InfoExtractor):              'isPlayerSeed': 'true',              'url': embed_url,          }) -        info = self._download_json( +        response = self._download_json(              'https://syn.5min.com/handlers/SenseHandler.ashx?' + query, -            video_id)['binding'][0] +            video_id) +        if not response['success']: +            err_msg = response['errorMessage'] +            if err_msg == 'ErrorVideoUserNotGeo': +                msg = 'Video not available from your location' +            else: +                msg = 'Aol said: %s' % err_msg +            raise ExtractorError(msg, expected=True, video_id=video_id) +        info = response['binding'][0]          second_id = compat_str(int(video_id[:-2]) + 1)          formats = [] | 
