Browse Source

[lynda] Simplify login and improve error capturing (#16891)

master-ytdl-org
Sergey M․ 6 years ago
parent
commit
5621c3222e
No known key found for this signature in database GPG Key ID: 2C393E0F18A9236D
1 changed files with 9 additions and 15 deletions
  1. +9
    -15
      youtube_dl/extractor/lynda.py

+ 9
- 15
youtube_dl/extractor/lynda.py View File

@ -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


Loading…
Cancel
Save