projects
/
youtube-dl
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
[lynda] Make login more robust
[youtube-dl]
/
youtube_dl
/
extractor
/
lynda.py
diff --git
a/youtube_dl/extractor/lynda.py
b/youtube_dl/extractor/lynda.py
index 39214de2f575ed52ee00054d94dfc3a97897c716..deead220af21bd5e37deab93446dc9e9cac59ba8 100644
(file)
--- a/
youtube_dl/extractor/lynda.py
+++ b/
youtube_dl/extractor/lynda.py
@@
-17,7
+17,6
@@
from ..utils import (
class LyndaBaseIE(InfoExtractor):
_LOGIN_URL = 'https://www.lynda.com/login/login.aspx'
class LyndaBaseIE(InfoExtractor):
_LOGIN_URL = 'https://www.lynda.com/login/login.aspx'
- _SUCCESSFUL_LOGIN_REGEX = r'isLoggedIn\s*:\s*true'
_ACCOUNT_CREDENTIALS_HINT = 'Use --username and --password options to provide lynda.com account credentials.'
_NETRC_MACHINE = 'lynda'
_ACCOUNT_CREDENTIALS_HINT = 'Use --username and --password options to provide lynda.com account credentials.'
_NETRC_MACHINE = 'lynda'
@@
-41,7
+40,7
@@
class LyndaBaseIE(InfoExtractor):
request, None, 'Logging in as %s' % username)
# Not (yet) logged in
request, None, 'Logging in as %s' % username)
# Not (yet) logged in
- m = re.search(r'loginResultJson
=
\'(?P<json>[^\']+)\';', login_page)
+ m = re.search(r'loginResultJson
\s*=\s*
\'(?P<json>[^\']+)\';', login_page)
if m is not None:
response = m.group('json')
response_json = json.loads(response)
if m is not None:
response = m.group('json')
response_json = json.loads(response)
@@
-70,7
+69,7
@@
class LyndaBaseIE(InfoExtractor):
request, None,
'Confirming log in and log out from another device')
request, None,
'Confirming log in and log out from another device')
- if
re.search(self._SUCCESSFUL_LOGIN_REGEX, login_page) is None
:
+ if
all(not re.search(p, login_page) for p in ('isLoggedIn\s*:\s*true', r'logout\.aspx', r'>Log out<'))
:
raise ExtractorError('Unable to log in')
raise ExtractorError('Unable to log in')