你是不是也遇到过这些烦恼?
- 每月想记账,但手动输入太麻烦,坚持几天就放弃了
- 微信账单一堆,想分析钱花哪儿了,Excel 却看得眼花
- 总是超支,但不知道是哪个类别花超了
为了解决这个问题,我用 Python 写了一个个人财务自动化工具。只需要把微信导出的账单放进去,就能自动清洗、分类、生成可视化报表,还能根据预算标出超支项。全程只需几秒钟,每月消费清清楚楚。
🛠️ 功能简介
✅账单导入:支持微信导出 Excel 账单,自动清洗(去除无关列、转换日期、处理金额)
✅ 自动分类:基于关键词规则,给每笔支出打上类别标签(餐饮、交通、购物等)
✅ 报表生成:生成月度汇总 Excel 报表,内含饼图、趋势图,消费结构一目了然
✅ 超支提醒:可自定义预算,自动检测超支项并在 Excel 中标红,同时输出超支明细 CSV
✅ 一键运行:所有模块集成在 main.py 中,一次执行完成全部流程
🧰 技术栈
Python 3.8+
Pandas:数据处理与清洗
Matplotlib:数据可视化
OpenPyXL:Excel 报表生成与美化
模块化设计,代码清晰易扩展
📁项目结构
personal_finance/
├── data/
│ ├── raw/ # 原始微信账单(不上传)
│ └── processed/ # 清洗后的数据
├── src/ # 源代码
│ ├── import_data.py # 导入与清洗
│ ├── classify.py # 自动分类
│ ├── report.py # 报表生成
│ ├── alert.py # 超支提醒
│ └── main.py # 一键运行入口
├── output/ # 生成的报表和图表
├── config/ # 预算配置文件
├── requirements.txt
└── README.md
📸 效果展示
饼图:各类别支出占比
月度趋势图:每月总支出变化
Excel 报表:自动生成的汇总表,超支项红色标记
本来以为会看到很多超支项,结果跑完发现我居然都在预算内——看来大学生活费确实有限😂。不过这个工具还是帮我清楚地看到了每月钱花在哪,尤其是“其他”类别让我意识到有些零碎开销被忽略了。准备调整一下分类规则,让报表更准。
🚀 快速上手
- 克隆项目或下载源码
- 安装依赖:pip install -r requirements.txt
- 从微信导出账单(我 → 服务 → 钱包 → 账单 → 下载 → 用于个人对账),将 Excel 文件放入 data/raw/
- 修改 src/import_data.py 中的文件名(默认 WeChat Pay1.xlsx)
- 运行 python src/main.py
- 查看 output/ 目录下的报表和图表
⚙️ 自定义预算
首次运行 alert.py 会自动生成 config/budget.json,按自己的消费习惯修改预算金额即可。
📌 项目地址
元宵节后做完后续功能会在GitHub上开源
💡 后续计划
- 增加多账单合并(支持支付宝账单)
- 增加 Web 界面(Streamlit 或 Flask)
- 支持更智能的分类(机器学习)
🤝 欢迎交流
如果你也有类似的需求或想法,欢迎在评论区留言,或给我提 Issue/PR。
最后修改于







