From 78fe6e38f8244ef6fbf72ed1e3c57e3060c90248 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pierre=20Mazi=C3=A8re?= Date: Wed, 9 Mar 2011 10:44:44 +0100 Subject: [PATCH] LCL: deal with wrong login MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Pierre Mazière Signed-off-by: Romain Bignon --- weboob/backends/lcl/browser.py | 5 ++--- weboob/backends/lcl/pages.py | 9 +++++++-- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/weboob/backends/lcl/browser.py b/weboob/backends/lcl/browser.py index 0b64ba23..35cca6d2 100644 --- a/weboob/backends/lcl/browser.py +++ b/weboob/backends/lcl/browser.py @@ -56,9 +56,8 @@ class LCLBrowser(BaseBrowser): self.location('%s://%s/index.html' % (self.PROTOCOL, self.DOMAIN),\ no_login=True) - self.page.login(self.agency, self.username, self.password) - - if not self.is_logged() or \ + if not self.page.login(self.agency, self.username, self.password) or \ + not self.is_logged() or \ (self.is_on_page(LoginResultPage) and self.page.is_error()) : raise BrowserIncorrectPassword() diff --git a/weboob/backends/lcl/pages.py b/weboob/backends/lcl/pages.py index a8e4dba8..23791786 100644 --- a/weboob/backends/lcl/pages.py +++ b/weboob/backends/lcl/pages.py @@ -19,7 +19,7 @@ from datetime import date from weboob.capabilities.bank import Operation from weboob.capabilities.bank import Account -from weboob.tools.browser import BasePage +from weboob.tools.browser import BasePage, BrowserUnavailable class LoginPage(BasePage): def login(self, agency, login, passwd): @@ -27,7 +27,12 @@ class LoginPage(BasePage): self.browser['agenceId'] = agency self.browser['compteId'] = login self.browser['CodeId'] = passwd - self.browser.submit() + try: + self.browser.submit() + except BrowserUnavailable: + # Login is not valid + return False + return True class LoginResultPage(BasePage): def is_error(self):