快速交换格式文件(.qif)的分析器。
qifparse的Python项目详细描述
用法
下面是一个解析示例:
>>> from qifparse.parser import QifParser >>> qif = QifParser.parse(file('file.qif')) >>> qif.get_accounts() (<qifparse.qif.Account object at 0x16148d0>, <qifparse.qif.Account object at 0x1614850>) >>> qif.accounts[0].name 'My Cash' >>> qif.get_categories() (<qifparse.qif.Category object at 0x15b3d10>, <qifparse.qif.Category object at 0x15b3450>) >>> qif.accounts[0].get_transactions() (<Transaction units=-6.5>, <Transaction units=-6.0>) >>> str(qif) '!Type:Cat\nNfood\nE\n^\nNfood:lunch\nE\n^\n!Account\nNMy Cash\nTCash\n^\n!Type:Cash... ...
下面是结构创建的示例:
>>> qif_obj = qif.Qif() >>> acc = qif.Account(name='My Cc', account_type='Bank') >>> qif_obj.add_account(acc) >>> cat = qif.Category(name='food') >>> qif_obj.add_category(cat) >>> tr1 = qif.Transaction(amount=0.55) >>> acc.add_transaction(tr1, header='!Type:Bank') >>> tr2 = qif.Transaction() >>> tr2.amount = -6.55 >>> tr2.to_account = 'Cash' >>> acc.add_transaction(tr2) >>> acc.add(tr2) >>> str(qif_obj) '!Type:Cat\nNfood\nE\n^\n!Account\nNMy Cc\nTBank\n^\n!Type:Bank\nD02/11/2013\nT... ...
更多信息
有关qif格式的详细信息:
更改日志
0.5(2013-11-03)
- 现在,交易也可以是外部账户
- 将属性移动到方法以接受筛选器
0.4(2013-11-02)
- 地址可以是多行
- 拆分可以具有address属性
- 添加对类的支持
- 添加对记忆传输的支持
0.3(2013-11-02)
- 更多的重构,现在lib更加简单和工程化
- 改进的字段验证
0.2(2013-11-02)
- 巨大的重构,现在可以通过编程方式创建和修改结构
0.1(2013-11-01)
- pypi上的第一个版本