From 6884068b0d2eae34205d757a8cd1d507d1fde30a Mon Sep 17 00:00:00 2001 From: Simon Rochwerg Date: Fri, 13 Apr 2018 15:11:14 +0200 Subject: [PATCH] [spirica] add currency field on the account, changes xpath on the table to make it adaptable to different currencies --- modules/spirica/pages.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/modules/spirica/pages.py b/modules/spirica/pages.py index 6870744094..49719383f3 100644 --- a/modules/spirica/pages.py +++ b/modules/spirica/pages.py @@ -24,7 +24,7 @@ from weboob.browser.pages import HTMLPage, LoggedPage from weboob.browser.elements import ItemElement, TableElement, method from weboob.browser.filters.standard import CleanText, Date, Regexp, CleanDecimal, \ - Field, Async, AsyncLoad, Eval + Field, Async, AsyncLoad, Eval, Currency from weboob.browser.filters.html import Attr, Link, TableCell from weboob.capabilities.bank import Account, Investment, Transaction from weboob.capabilities.base import NotAvailable, empty @@ -32,6 +32,7 @@ from weboob.tools.compat import urljoin + def MyDecimal(*args, **kwargs): kwargs.update(replace_dots=True, default=NotAvailable) return CleanDecimal(*args, **kwargs) @@ -68,7 +69,8 @@ class iter_accounts(TableElement): col_label = u'Produit' col_id = u'Numéro de contrat' - col_balance = u'Montant (€)' + col_balance = re.compile(u'Montant') + col_currency = u'Currency' class item(ItemElement): klass = Account @@ -80,6 +82,7 @@ class item(ItemElement): obj_balance = MyDecimal(TableCell('balance')) obj_valuation_diff = Async('details') & MyDecimal('//tr[1]/td[contains(text(), \ "value du contrat")]/following-sibling::td') + obj_currency = Currency('//td[contains(@class,"donneeMontant")]') def obj_url(self): return urljoin(self.page.url, Link('.//a')(self)) -- GitLab