From e3573f521b97c83f0e80f79f5085900d743098c9 Mon Sep 17 00:00:00 2001 From: Quentin Defenouillere Date: Thu, 31 Dec 2020 11:49:30 +0100 Subject: [PATCH] [apivie] Fetch Account.opening_date --- modules/apivie/browser.py | 10 +++++++++- modules/apivie/pages.py | 6 ++++++ 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/modules/apivie/browser.py b/modules/apivie/browser.py index 16eab204af..87382febde 100644 --- a/modules/apivie/browser.py +++ b/modules/apivie/browser.py @@ -72,7 +72,15 @@ def do_login(self): @retry(BrowserUnavailable, tries=3) def iter_accounts(self): self.accounts.go(api_url=self.APIURL) - return self.page.iter_accounts() + for account in self.page.iter_accounts(): + try: + self.investments.go(api_url=self.APIURL, account_id=account.id) + except (ReadTimeoutError, ClientError) as e: + self.logger.warning('Error when trying to access account details: %s', e) + pass + else: + account.opening_date = self.page.get_opening_date() + yield account @need_login @retry(BrowserUnavailable, tries=3) diff --git a/modules/apivie/pages.py b/modules/apivie/pages.py index b26c06d669..dfad202930 100644 --- a/modules/apivie/pages.py +++ b/modules/apivie/pages.py @@ -118,6 +118,12 @@ def obj_srri(self): return NotAvailable return int(srri) + def get_opening_date(self): + return Date( + CleanText(Dict('dateEffet')), + default=NotAvailable + )(self.doc) + class Transaction(FrenchTransaction): pass -- GitLab