lcl: support new auth system
This commit is contained in:
parent
62ef400de8
commit
bb430b3078
3 changed files with 17 additions and 8 deletions
|
|
@ -75,13 +75,21 @@ class SkipPage(BasePage):
|
|||
|
||||
|
||||
class LoginPage(BasePage):
|
||||
def on_loaded(self):
|
||||
try:
|
||||
self.browser.select_form(name='form')
|
||||
except:
|
||||
pass
|
||||
else:
|
||||
self.browser.submit(nologin=True)
|
||||
|
||||
def myXOR(self,value,seed):
|
||||
s=''
|
||||
for i in xrange(len(value)):
|
||||
s+=chr(seed^ord(value[i]))
|
||||
return s
|
||||
|
||||
def login(self, agency, login, passwd):
|
||||
def login(self, login, passwd, agency):
|
||||
try:
|
||||
vk=LCLVirtKeyboard(self)
|
||||
except VirtKeyboardError,err:
|
||||
|
|
@ -106,8 +114,11 @@ class LoginPage(BasePage):
|
|||
self.browser.select_form(
|
||||
predicate=lambda x: x.attrs.get('id','')=='formAuthenticate')
|
||||
self.browser.form.set_all_readonly(False)
|
||||
self.browser['agenceId'] = agency
|
||||
self.browser['compteId'] = login
|
||||
if len(agency) > 0:
|
||||
self.browser['agenceId'] = agency.encode('utf-8')
|
||||
self.browser['compteId'] = login.encode('utf-8')
|
||||
else:
|
||||
self.browser['identifiant'] = login.encode('utf-8')
|
||||
self.browser['postClavierXor'] = base64.b64encode(self.myXOR(password,seed))
|
||||
try:
|
||||
self.browser.submit(nologin=True)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue