本文整理汇总了Python中weboob.capabilities.bank.Account._params["dialogActionPerformed"]方法的典型用法代码示例。如果您正苦于以下问题:Python Account._params["dialogActionPerformed"]方法的具体用法?Python Account._params["dialogActionPerformed"]怎么用?Python Account._params["dialogActionPerformed"]使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类weboob.capabilities.bank.Account
的用法示例。
在下文中一共展示了Account._params["dialogActionPerformed"]方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: iter_accounts
# 需要导入模块: from weboob.capabilities.bank import Account [as 别名]
# 或者: from weboob.capabilities.bank.Account import _params["dialogActionPerformed"] [as 别名]
def iter_accounts(self):
params = {}
for field in self.document.xpath("//input"):
params[field.attrib["name"]] = field.attrib.get("value", "")
account = None
for tr in self.document.xpath('//table[@id="TabCtes"]/tbody/tr'):
cols = tr.xpath("./td")
id = self.parser.tocleanstring(cols[self.COL_ID])
if len(id) > 0:
if account is not None:
yield account
account = Account()
account.id = id
account.balance = account.coming = Decimal("0")
account._next_debit = datetime.date.today()
account._prev_debit = datetime.date(2000, 1, 1)
account.label = u" ".join(
[self.parser.tocleanstring(cols[self.COL_TYPE]), self.parser.tocleanstring(cols[self.COL_LABEL])]
)
account._coming_params = params.copy()
account._coming_params["dialogActionPerformed"] = "SELECTION_ENCOURS_CARTE"
account._coming_params["attribute($SEL_$%s)" % tr.attrib["id"].split("_")[0]] = tr.attrib["id"].split(
"_", 1
)[1]
elif account is None:
raise BrokenPageError("Unable to find accounts on cards page")
else:
account._params = params.copy()
account._params["dialogActionPerformed"] = "SELECTION_ENCOURS_CARTE"
account._params["attribute($SEL_$%s)" % tr.attrib["id"].split("_")[0]] = tr.attrib["id"].split("_", 1)[
1
]
date_col = self.parser.tocleanstring(cols[self.COL_DATE])
m = re.search("(\d+)/(\d+)/(\d+)", date_col)
if not m:
self.logger.warning("Unable to parse date %r" % date_col)
continue
date = datetime.date(*reversed(map(int, m.groups())))
if date.year < 100:
date = date.replace(year=date.year + 2000)
amount = Decimal(FrenchTransaction.clean_amount(self.parser.tocleanstring(cols[self.COL_AMOUNT])))
if not date_col.endswith("(1)"):
# debited
account.coming += -abs(amount)
account._next_debit = date
elif date > account._prev_debit:
account._prev_balance = -abs(amount)
account._prev_debit = date
if account is not None:
yield account