[lynda] Simplify login and improve error capturing (#16891)
This commit is contained in:
parent
db5debf313
commit
5621c3222e
|
@ -44,21 +44,15 @@ class LyndaBaseIE(InfoExtractor):
|
||||||
form_data = self._hidden_inputs(form_html)
|
form_data = self._hidden_inputs(form_html)
|
||||||
form_data.update(extra_form_data)
|
form_data.update(extra_form_data)
|
||||||
|
|
||||||
try:
|
response = self._download_json(
|
||||||
response = self._download_json(
|
action_url, None, note,
|
||||||
action_url, None, note,
|
data=urlencode_postdata(form_data),
|
||||||
data=urlencode_postdata(form_data),
|
headers={
|
||||||
headers={
|
'Referer': referrer_url,
|
||||||
'Referer': referrer_url,
|
'X-Requested-With': 'XMLHttpRequest',
|
||||||
'X-Requested-With': 'XMLHttpRequest',
|
}, expected_status=(418, 500, ))
|
||||||
})
|
|
||||||
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')
|
self._check_error(response, ('email', 'password', 'ErrorMessage'))
|
||||||
|
|
||||||
return response, action_url
|
return response, action_url
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue