diff options
| author | Sergey M․ <dstftw@gmail.com> | 2018-07-03 02:47:09 +0700 | 
|---|---|---|
| committer | Sergey M․ <dstftw@gmail.com> | 2018-07-03 02:47:09 +0700 | 
| commit | 5621c3222eaab29d5ca705c8dac2d0bc1eb785d6 (patch) | |
| tree | 22257c696fd41100dec375dd2465604b0336931f | |
| parent | db5debf313bd2ab99016f2c5b389dbf9ffae3dfb (diff) | |
[lynda] Simplify login and improve error capturing (#16891)
| -rw-r--r-- | youtube_dl/extractor/lynda.py | 24 | 
1 files changed, 9 insertions, 15 deletions
| diff --git a/youtube_dl/extractor/lynda.py b/youtube_dl/extractor/lynda.py index f5c7abc13..1316cddb6 100644 --- a/youtube_dl/extractor/lynda.py +++ b/youtube_dl/extractor/lynda.py @@ -44,21 +44,15 @@ class LyndaBaseIE(InfoExtractor):          form_data = self._hidden_inputs(form_html)          form_data.update(extra_form_data) -        try: -            response = self._download_json( -                action_url, None, note, -                data=urlencode_postdata(form_data), -                headers={ -                    'Referer': referrer_url, -                    'X-Requested-With': 'XMLHttpRequest', -                }) -        except ExtractorError as e: -            if isinstance(e.cause, compat_HTTPError) and e.cause.code == 500: -                response = self._parse_json(e.cause.read().decode('utf-8'), None) -                self._check_error(response, ('email', 'password')) -            raise - -        self._check_error(response, 'ErrorMessage') +        response = self._download_json( +            action_url, None, note, +            data=urlencode_postdata(form_data), +            headers={ +                'Referer': referrer_url, +                'X-Requested-With': 'XMLHttpRequest', +            }, expected_status=(418, 500, )) + +        self._check_error(response, ('email', 'password', 'ErrorMessage'))          return response, action_url | 
