解析数据源(ofx、qif、csv等)并导入gnucash文件。

gnucash-magical-importer的Python项目详细描述


gnucash魔法导入器

Build Status

使用gnucash管理我的个人财务的脚本集。这个项目有许多gnucash文件的解析器。其目的是将不同的数据源集成到gnucash数据文件中。

gnucash的xml文件将充当事务数据库。所有其他报告都将由解析器生成。

信息来源

  • Nubank信用卡
  • ITAU的支票账户
  • CEF的储蓄
  • gnucash mobile(未追踪费用:钱包中的钱、礼物等)
  • 布拉德斯科的储蓄

要求

  • 运行集成的cronjob
  • 从任何数据源,所有事务都必须集成到一个文件中
  • 一个git提交的文件
  • 导入文件的报告
  • 将gnucash的xml文件保存为常规文件,而不是二进制文件(压缩的)-可以使用选项file compression=false在general section of gnucash configuration

财务管理

交易来源

  • ITAU支票账户
  • CEF储蓄
  • 钱包里的钱
  • 纽班克
  • 布拉德斯科储蓄

分类器

主要目标

  • 单笔交易

更复杂的操作

  • 是另一笔大宗交易(带摊位购买)的一部分的交易
  • 每月(经常性)付款:哈文、RCHLO和水电费(天然气、水、电)

环境

virtualenv

它不能与virtualenv一起使用,因为它依赖于python3 gnucash deb包和gnucash本身。 因此,您需要在操作系统中直接安装命令:

jefferson@nami.jeffersoncampos.eti.br: ~/universal/projects/gnucash/gnucash-magical-importer/ $ pip3 install -r requirements.txt

配置文件

此项目有一个setup.cfg文件(ini format),必须安装该文件才能运行应用程序。搜索顺序是:

  1. /etc/gnucash magical importer/setup.cfg
  2. /usr/local/etc/gnucash magical importer/setup.cfg
  3. /usr/etc/gnucash magical importer/setup.cfg
  4. ~/.gnucash magical importer/setup.cfg

您仍然可以使用make targetsetup cfg作为:

jefferson@nami.jeffersoncampos.eti.br: ~/universal/projects/gnucash/gnucash-magical-importer/ $ make setup-cfg

此外,还可以删除目标为remove cfg的文件,并查看目标为show cfg的目录内容。

码头工人

对于开发机器,可以使用Docker进行开发。用

jefferson@nami.jeffersoncampos.eti.br: ~/universal/projects/gnucash/gnucash-magical-importer/ $ sudo docker build -t foguinhoperuca/gnucash_magical_importer . --build-arg USE_APT_PROXY=True --build-arg APT_PROXY=192.168.1.101:8000

jefferson@nami.jeffersoncampos.eti.br: ~/universal/projects/gnucash/gnucash-magical-importer/ $ make docker_build

然后,使用以下命令运行测试:

jefferson@nami.jeffersoncampos.eti.br: ~/universal/projects/gnucash/gnucash-magical-importer/ $ docker run -ti foguinhoperuca/gnucash_magical_importer /bin/sh -c "make test-check"

jefferson@nami.jeffersoncampos.eti.br: ~/universal/projects/gnucash/gnucash-magical-importer/ $ make docker_run

使用bdsit轮进行黑客攻击

  1. 手动创建egg info bdsit(bdist_egg),并在build/bdsit.linux-x86_64/wheel;目录中将其复制为gnucash_magical_importer-0.1.0-py3.6.egg-info
  2. python3源代码中的注释行:sudo vim/usr/lib/python3.6/email/message.py 558和559;
  3. 然后,运行python3 setup.py sdist bdist_wheel;
  4. 最后,还原步骤2;

https://github.com/pypa/wheel/blob/master/wheel/bdist_wheel.py

类似项目

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
使用Scala对Java进行单元测试?   java无法将应用程序部署到Tomcat   java如何在IntelliJ IDEA中创建补丁?   java如何在安卓中编程设置列表视图高度   java如何使用charAt检查字符串是否以AZ或AZ开头?   java在SQL查询中使用非限制值   java函数在不同的Android版本中返回不同的datetime值   java方法应该在实现动作的类中,还是在实现的类中?   java从另一个线程的类访问线程类的公共静态arrayList   java是否像重新引发相同的异常?   java如何从localhost访问本地文件   javaurl。openStream非常慢   java数组越界和空指针异常   java我只是在某种程度上破坏了Netbeans,我不知道如何修复它   java是否可以延迟类的加载,而这些类可能在以后动态加载?   java断开外壳输出到文件   从blob服务回调时出现java Google应用程序引擎错误   java将SparseArray存储在JSON中并使用它   使用IText for Java进行pdf文本定位   java如何更改SearchView的样式?