diff options
| author | Sergey M․ <dstftw@gmail.com> | 2015-01-28 23:58:14 +0600 | 
|---|---|---|
| committer | Sergey M․ <dstftw@gmail.com> | 2015-01-28 23:58:14 +0600 | 
| commit | 63be3b89894f26caf69d9667f8e7db5ecbcb03ab (patch) | |
| tree | a7524675305799c0c1235f3b95dc9982b83b15ca | |
| parent | 18b4e9e79d6cc1ed21df7479273915ca3a763b80 (diff) | |
[ivi] Modernize
| -rw-r--r-- | youtube_dl/extractor/ivi.py | 27 | 
1 files changed, 16 insertions, 11 deletions
| diff --git a/youtube_dl/extractor/ivi.py b/youtube_dl/extractor/ivi.py index 7a400323d..e82594444 100644 --- a/youtube_dl/extractor/ivi.py +++ b/youtube_dl/extractor/ivi.py @@ -16,7 +16,7 @@ from ..utils import (  class IviIE(InfoExtractor):      IE_DESC = 'ivi.ru'      IE_NAME = 'ivi' -    _VALID_URL = r'https?://(?:www\.)?ivi\.ru/(?:watch/(?:[^/]+/)?|video/player\?.*?videoId=)(?P<videoid>\d+)' +    _VALID_URL = r'https?://(?:www\.)?ivi\.ru/(?:watch/(?:[^/]+/)?|video/player\?.*?videoId=)(?P<id>\d+)'      _TESTS = [          # Single movie @@ -63,29 +63,34 @@ class IviIE(InfoExtractor):          return int(m.group('commentcount')) if m is not None else 0      def _real_extract(self, url): -        mobj = re.match(self._VALID_URL, url) -        video_id = mobj.group('videoid') +        video_id = self._match_id(url)          api_url = 'http://api.digitalaccess.ru/api/json/' -        data = {'method': 'da.content.get', -                'params': [video_id, {'site': 's183', -                                      'referrer': 'http://www.ivi.ru/watch/%s' % video_id, -                                      'contentid': video_id -                                      } -                           ] +        data = { +            'method': 'da.content.get', +            'params': [ +                video_id, { +                    'site': 's183', +                    'referrer': 'http://www.ivi.ru/watch/%s' % video_id, +                    'contentid': video_id                  } +            ] +        }          request = compat_urllib_request.Request(api_url, json.dumps(data)) -        video_json_page = self._download_webpage(request, video_id, 'Downloading video JSON') +        video_json_page = self._download_webpage( +            request, video_id, 'Downloading video JSON')          video_json = json.loads(video_json_page)          if 'error' in video_json:              error = video_json['error']              if error['origin'] == 'NoRedisValidData':                  raise ExtractorError('Video %s does not exist' % video_id, expected=True) -            raise ExtractorError('Unable to download video %s: %s' % (video_id, error['message']), expected=True) +            raise ExtractorError( +                'Unable to download video %s: %s' % (video_id, error['message']), +                expected=True)          result = video_json['result'] | 
