BoursoBank库。
项目描述
Parseur de relevés BoursoBank
⚠ 该库是独立于BoursoBank开发的。
安装
pip install boursobank
安全
密码
此库不会连接到互联网(如有疑问,请阅读代码)它只读取已下载的PDF格式的账单,所有处理均在本地进行。
在疑问的情况下,应用程序应在firejail或类似环境中运行。
因此,无需担心密码:它不需要(这里不需要再次阅读代码:如果库不请求密码…它就没有)。
解析器错误
读取PDF 并不简单。
为了确保不会在您的分析中引入错误,该库提供了一个validate()
方法,该方法验证初始金额加上所有行是否确实等于最终金额,否则将引发一个ValueError
。
因此,此示例仅在分析错误(或银行,如垄断)的情况下引发异常。
for file in args.files:
statement = Statement.from_pdf(file)
statement.pretty_print()
statement.validate()
命令行界面
此库可用于命令行
boursobank *.pdf
将显示您的账单(信用卡或账户),例如
$ boursobank 2024-01.pdf
2024-01.pdf
┏━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ Date ┃ RIB ┃
┡━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━┩
│ 2024-01-01 │ 12345 12345 00000000000 99 │
└────────────┴────────────────────────────┘
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━┓
┃ Label ┃ Value ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━┩
│ VIR SEPA Truc │ 42.42 │
│ VIR SEPA Machin truc │ 99.00 │
│ Relevé différé Carte 4810********0000 │ -123.45 │
└──────────────────────────────────────────┴──────────┘
API
所有的好处是能够在Python中查看账单,例如导出到CSV格式
import argparse
import csv
import sys
from pathlib import Path
from boursobank import Statement
def main():
args = parse_args()
statement = Statement.from_pdf(args.ifile)
writer = csv.writer(sys.stdout)
for line in statement.lines:
writer.writerow((line.label, line.value))
def parse_args():
parser = argparse.ArgumentParser()
parser.add_argument("ifile", type=Path, help="PDF file")
return parser.parse_args()
if __name__ == "__main__":
main()
该库仅提供一个入口点:类Statement
从此类可以解析PDF
relevé_bancaire = Statement.from_pdf("test.pdf")
或文本
relevé_bancaire = Statement.from_text("blah blah")
此类主要提供两个属性,一个包含以下内容的字典headers
date
:本账单覆盖的月份的第一天。emit_date
:账单的编写日期。RIB
:账单的RIB/IBAN。devise
:可能是"EUR"
。card_number
: 如果是银行卡对账单,则为银行卡号。card_owner
: 如果是银行卡对账单,则为银行卡持有人姓名。
以及一个包含Line
类实例的lines属性,其主要属性包括:
label
: 线的简短描述。description
: 如果描述跨越多行,则为线的详细描述。value
: 线的金额(信用为正数,借记为负数)。
项目详情
下载文件
下载适用于您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。
源分布
boursobank-0.5.tar.gz (7.7 kB 查看哈希值)
构建分布
boursobank-0.5-py2.py3-none-any.whl (8.7 kB 查看哈希值)
关闭
boursobank-0.5.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 9eaf6d084bec442e1bed0f94abfd0ca1be137a85d39669ceefe36ecdccb39273 |
|
MD5 | 3938ba694126746e6e7f1077107752d1 |
|
BLAKE2b-256 | 6f8a10865111a7d3a49e18e66570aa640a1c6d8773d4231143517952cea017ab |
关闭
boursobank-0.5-py2.py3-none-any.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 4ae0a9fffc63c302ddf6af432c41c65d16c24650cf42a313864025552533146c |
|
MD5 | c86dcb61c861897b80f97e0d1de74078 |
|
BLAKE2b-256 | 29091349fdcda5a329a1f3309f37ca77588d303851af8ea413e11c2d036b59aa |