Skip to content

dtsola/xiaoyaoprivatebill

Repository files navigation

小遥账单助手

隐私优先的个人账单分析工具,数据完全本地处理,不上传任何服务器

License: MIT Python Vue Docker

English | 简体中文

小遥账单助手宣传海报


简介

小遥账单助手

小遥账单助手是一个隐私优先的个人账单分析工具,支持支付宝和微信账单的自动解析和多维度数据可视化分析。

核心特点

  • 🔒 隐私安全 - 数据完全本地处理,不上传任何服务器
  • 🔐 手动清除 - 随时手动清除账单数据,完全掌控您的财务隐私
  • 📊 多维度分析 - 年度、月度、分类、时间、消费洞察
  • 📁 多格式支持 - 支付宝 CSV、微信 CSV/XLSX 账单文件
  • 🚀 快速部署 - Docker 一键启动,开箱即用
  • 💻 前后端分离 - Vue 3 + Flask 架构,易于维护扩展
  • 📱 响应式设计 - 支持桌面端和移动端访问

作者介绍

dtsola

dtsola — IT解决方案架构师 | 一人公司实践者

🌐 个人站点  |  📺 B站  |  💬 微信:dtsola(技术交流 | 商务合作)

微信二维码        开发者交流群        用户交流群

微信联系          开发者交流群          用户交流群


功能预览

上传账单 - 一键导入

上传账单
  • 📤 支持拖拽上传账单文件
  • 📋 自动识别支付宝/微信账单格式
  • ⚡ 快速解析,一键生成分析报告

首页 - 功能入口

首页
  • 🎯 全能账单分析工具 - 支持支付宝和微信账单
  • 📊 4大功能卡片 - 多维度分析、隐私保护、趋势追踪、智能搜索
  • 🚀 快捷操作 - 上传账单文件或查看示例数据

年度总览 - 一目了然

年度总览
  • 📊 年度收支总览,收入支出清晰可见
  • 📈 年度趋势图表,把握财务走向
  • 📖 年度故事回顾,记录每一笔消费

月度分析 - 精细对比

月度分析
  • 📅 月度收支趋势,环比同比分析
  • 🗓️ 月度日历视图,每日消费一目了然
  • 📉 月度对比分析,发现消费规律

分类分析 - 花费明细

分类分析
  • 🏷️ 分类占比分析,钱花在哪一看便知
  • 📊 分类排行统计,找出主要支出
  • 📝 分类明细列表,逐笔查看记录

时间分析 - 消费规律

时间分析
  • ⏰ 消费时间分布,了解消费时段
  • 🌡️ 消费时段热力图,发现消费习惯
  • 📈 消费趋势洞察,优化消费结构

消费洞察 - 智能分析

消费洞察-01 消费洞察-02
消费洞察-03
  • 💡 消费习惯分析,发现省钱机会
  • 🔍 异常消费提醒,避免不必要支出
  • 📊 消费建议,优化财务规划

交易记录 - 明细查询

交易记录
  • 📋 完整交易明细,每一笔都清晰
  • 🔍 多维度筛选,快速找到目标
  • 📤 支持导出,方便进一步分析

快速开始

方式一:Docker 一键安装(推荐给普通用户)

环境准备

安装 Docker Desktop(已包含 Docker Compose):

启动步骤

# 1. 克隆项目
git clone https://github.com/dtsola/xiaoyaoprivatebill.git
cd xiaoyaoprivatebill

# 2. 一键启动
docker-compose up -d

# 3. 访问应用
# 浏览器打开: http://localhost:8888

常用命令

# 查看日志
docker-compose logs -f

# 停止服务
docker-compose down

# 重启服务
docker-compose restart

方式二:开发者本地开发

前置要求

  • Python 3.10+
  • Node.js 18+
  • Git

后端设置

# 1. 进入后端目录
cd backend

# 2. 创建并激活虚拟环境(Windows)
py -3.10 -m venv venv
venv\Scripts\activate

# 3. 安装依赖
pip install -r requirements.txt

# 4. 启动后端服务
python app.py
# 后端运行在: http://localhost:5000

前端设置

# 1. 进入前端目录(新终端窗口)
cd frontend

# 2. 安装依赖
npm install

# 3. 启动开发服务器
npm run dev
# 前端运行在: http://localhost:3000

开发模式命令

# 前端构建生产版本
npm run build

# 预览生产构建
npm run preview

# 后端退出虚拟环境
deactivate

使用说明

1. 获取账单文件

支付宝账单

  1. 打开支付宝 APP → 账单
  2. 点击右上角「常见问题」→ 导出账单
  3. 选择「个人账单」→ 时间范围 → 选中 CSV 格式
  4. 输入邮箱,等待接收账单文件

微信账单

  1. 打开微信 APP → 我 → 服务 → 钱包 → 右上角「账单」
  2. 点击「常见问题」→ 下载账单
  3. 选择时间范围 → 输入邮箱 → 选择 CSV/XLSX 格式

2. 上传分析

  1. 访问应用首页
  2. 点击「上传账单」按钮
  3. 选择下载好的账单文件(CSV/XLSX)
  4. 等待解析完成,自动跳转到分析页面

3. 数据导出

分析完成后,可以将结果导出为:

  • PNG 图片(图表截图)
  • CSV 数据(原始数据)

技术栈

后端

技术 版本 说明
Python 3.10+ 后端开发语言
Flask 2.0+ Web 框架
Pandas Latest 数据处理核心
NumPy Latest 数值计算
OpenPyXL Latest Excel 文件处理

前端

技术 版本 说明
Vue 3.4+ 前端框架
Vite 5.0+ 构建工具
Vue Router 4.2+ 路由管理
Pinia 2.1+ 状态管理
ECharts 5.4+ 数据可视化

部署

技术 说明
Docker 容器化部署
Docker Compose 服务编排
Nginx Web 服务器

项目结构

xiaoyaoprivatebill/
├── backend/               # 后端项目(Flask + Pandas)
│   ├── api/              # API 路由层
│   ├── services/         # 业务逻辑层
│   ├── parsers/          # 文件解析模块
│   ├── utils/            # 工具函数
│   ├── data/             # 临时数据目录
│   ├── app.py            # 应用入口
│   ├── config.py         # 配置管理
│   ├── Dockerfile        # 后端镜像构建
│   └── requirements.txt  # Python 依赖
│
├── frontend/             # 前端项目(Vue 3 + Vite)
│   ├── src/
│   │   ├── api/         # API 客户端
│   │   ├── views/       # 页面组件
│   │   ├── components/  # 公共组件
│   │   ├── stores/      # 状态管理(Pinia)
│   │   └── utils/       # 工具函数
│   ├── nginx.conf       # Nginx 配置
│   ├── Dockerfile       # 前端镜像构建
│   ├── package.json     # 依赖配置
│   └── vite.config.js   # Vite 配置
│
├── docs/                 # 设计文档目录
├── docker-compose.yml    # Docker 编排配置
└── README.md            # 本文档

文档


致谢

本项目的前端和后端完全重构自优秀开源项目 alipay_record_analysis,感谢原作者 Hessel2333 提供的灵感和基础代码。

在原项目的基础上,本项目进行了以下改进:

  • 前端从 Jinja2 模板重构为 Vue 3 + Vite 现代化架构
  • 后端从单体应用重构为模块化蓝图架构
  • 优化前端、后端性能
  • 优化数据可视化展示
  • 添加 Docker 一键部署能力

贡献指南

欢迎贡献代码、报告问题或提出建议!

开发流程

  1. Fork 本仓库
  2. 创建功能分支 (git checkout -b feature/AmazingFeature)
  3. 提交更改 (git commit -m 'feat: 添加某个功能')
  4. 推送到分支 (git push origin feature/AmazingFeature)
  5. 创建 Pull Request

代码规范

详细规范请参阅 CLAUDE.md


常见问题

Q: 支持哪些账单格式?

A: 目前支持:

  • 支付宝 CSV 账单
  • 微信 CSV 账单
  • 微信 XLSX 账单

Q: 数据会上传到服务器吗?

A: 不会。所有数据处理完全在本地进行,不上传任何服务器。

Q: 支持移动端吗?

A: 支持。前端采用响应式设计,可在手机浏览器上正常使用。

Q: 如何修改默认端口?

A:

  • Docker 部署:修改 docker-compose.yml 中的端口映射
  • 后端:修改 backend/config.py 中的 PORT 配置
  • 前端开发:修改 frontend/vite.config.js 中的 server.port 配置

许可证

本项目采用 MIT 许可证


联系方式


Made with ❤️ by Xiaoyao Team

About

小遥账单,支付宝微信账单一键智能分析,看清每一分钱的去向,每月省下不该花的钱。Xiaoyao Bill Assistant, One-click intelligent analysis for Alipay and WeChat bills. See exactly where your money goes and stop wasting on unnecessary expenses.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors