diff --git a/weboob/backends/bouygues/browser.py b/weboob/backends/bouygues/browser.py index bea98e4d..46ff1c79 100644 --- a/weboob/backends/bouygues/browser.py +++ b/weboob/backends/bouygues/browser.py @@ -17,7 +17,7 @@ from .pages.compose import ComposeFrame, ComposePage, ConfirmPage, SentPage -from .pages.login import LoginPage +from .pages.login import LoginPage, LoginSASPage from weboob.tools.browser import BaseBrowser, BrowserIncorrectPassword @@ -32,6 +32,7 @@ class BouyguesBrowser(BaseBrowser): 'http://www.mobile.service.bbox.bouyguestelecom.fr/services/SMSIHD/sendSMS.phtml': ComposeFrame, 'http://www.mobile.service.bbox.bouyguestelecom.fr/services/SMSIHD/confirmSendSMS.phtml': ConfirmPage, 'https://www.espaceclient.bouyguestelecom.fr/ECF/jsf/submitLogin.jsf': LoginPage, + 'https://www.espaceclient.bouyguestelecom.fr/ECF/SasUnifie': LoginSASPage, 'http://www.mobile.service.bbox.bouyguestelecom.fr/services/SMSIHD/resultSendSMS.phtml': SentPage, } @@ -44,6 +45,8 @@ class BouyguesBrowser(BaseBrowser): def login(self): self.location('https://www.espaceclient.bouyguestelecom.fr/ECF/jsf/submitLogin.jsf', no_login=True) self.page.login(self.username, self.password) + assert self.is_on_page(LoginSASPage) + self.page.login() if not self.is_logged(): raise BrowserIncorrectPassword() diff --git a/weboob/backends/bouygues/pages/compose.py b/weboob/backends/bouygues/pages/compose.py index d1c72f29..fef65ba3 100644 --- a/weboob/backends/bouygues/pages/compose.py +++ b/weboob/backends/bouygues/pages/compose.py @@ -20,7 +20,6 @@ import re from weboob.capabilities.messages import CantSendMessage from weboob.tools.browser import BasePage -#from weboob.tools.parsers.lxmlparser import select, SelectElementException __all__ = ['ComposeFrame', 'ComposePage', 'ConfirmPage', 'SentPage'] diff --git a/weboob/backends/bouygues/pages/login.py b/weboob/backends/bouygues/pages/login.py index 4b489d6e..cfa70add 100644 --- a/weboob/backends/bouygues/pages/login.py +++ b/weboob/backends/bouygues/pages/login.py @@ -19,7 +19,7 @@ from weboob.tools.browser import BasePage -__all__ = ['LoginPage'] +__all__ = ['LoginPage', 'LoginSASPage'] class LoginPage(BasePage): @@ -28,3 +28,9 @@ class LoginPage(BasePage): self.browser['j_username'] = login self.browser['j_password'] = password self.browser.submit() + + +class LoginSASPage(BasePage): + def login(self): + self.browser.select_form(name='redirect') + self.browser.submit()