个人微信群识别酒店订单信息并自动录入本地Excel表格,实现订单实时统计功能。订单新增,订单修改,取消订单

项目源码

通过网盘分享的文件:微信群酒店订单信息自动录入Excel表格.rar
链接: https://pan.baidu.com/s/10-xSwVw9zinYepTy6bgUCA?pwd=m4fe 提取码: m4fe

项目需求

1.需求目标

根据我们群内的发单消息,按照特定规则提取信息并自动填入汇总到Excel表中,excel表格存储到项目根目录data目录中!

2.信息提取

2.1新单的录入

- 发单样式如下
"客服: 11
编号:1498982687
订单号:5008017315476637386
预约码:130709357513614
酒店: 珠海XXXXX国际大酒店
房型:园景房 | 双床
夜间:1间1晚
套餐:2人 | 海洋温泉
名字电话:李先生 186XXXXXXXX
入住日期:12.23
离店日期:12.24
金额:"590
- 根据回调信息中的发单的信息,抓取以下表头信息自动填入excel表格中,(表格存入位置:data):
1)下单日期:订单发布的日期
2)酒店名称:抓取发单消息中“酒店:”后的内容,以上面截图为例则是:“珠海XXXXX国际大酒店”;
3)间夜:抓取发单消息中“间夜:”后的内容,以上面截图为例则是:“1间1晚”;
4)入住人:抓取发单消息中“名字电话:”后的内容中的姓名,以上面截图为例则是:“李先生”;
5)入住日期:抓取发单消息中“入住日期:”后的内容,以上面截图为例则是“12月23日”;
6)发单客服:抓取发单消息中“客服:”后的内容,以上面截图为例则是“11”;
7)订单金额:抓取发单消息中“金额:”后的内容,以上面截图为例则是“590”。

2.2修改单的录入

修改单:
 客服: 11
编号:1498982687
订单号:5008017315476637386
预约码:130709357513614
酒店: 珠海XXXXX国际大酒店
房型:园景房 | 双床
夜间:1间1晚
套餐:2人 | 海洋温泉
名字电话:李晓磊 186XXXXXXXX
入住日期:12.23
离店日期:12.24
金额:"399+50升级

回调信息中如果存在 修改单 字眼,以订单号为搜索条件在excel表中找到该条记录,对比修改内容并直接在表中做出修改,备注记录修改时间。

2.3取消单的录入

取消单:申请退款
"客服: 11
编号:1498982687
订单号:5008017315476637386
预约码:130709357513614
酒店: 珠海XXXXX国际大酒店
房型:园景房 | 双床
夜间:1间1晚
套餐:2人 | 海洋温泉
名字电话:李先生 186XXXXXXX
入住日期:12.23
离店日期:12.24
金额:"399

回调信息中如果存在 取消单 字眼,以订单号为搜索条件在excel表中找到该条记录,下增一行做负数金额的增加。

项目开发

项目简介

本项目是一个自动化的酒店订单信息录入系统,能够从微信群消息中提取订单信息并自动录入到Excel表格中。系统支持新单、修改单和取消单的处理,并具备并发处理能力。

功能特性

  • 自动信息提取:从微信群消息中自动提取订单关键信息
  • 多种订单类型:支持新单、修改单、取消单的处理
  • 并发处理:支持多个订单同时处理,提高效率
  • 线程安全:使用线程锁确保Excel文件操作的安全性
  • 自动分类:按月份自动创建和管理Excel文件
  • 智能解析:自动忽略"和"符号,支持多种日期格式
  • 自动回复:订单处理完成后自动在群里回复通知消息

项目结构

HotelInformation_Entry/
├── main.py                 # Flask主程序,接收回调数据
├── schedule.py             # 消息调度处理
├── order_parser.py         # 订单信息解析模块
├── excel_manager.py        # Excel操作管理模块
├── order_processor.py      # 订单并发处理模块
├── requirements.txt        # 项目依赖
├── data/                   # Excel文件存储目录
└── log/                    # 日志文件目录

安装依赖

pip install -r requirements.txt

主要依赖:

  • flask:Web框架
  • python-dotenv:环境变量管理
  • openpyxl:Excel文件操作

使用方法

1. 配置环境变量
.env

编辑 .env 文件,设置必要的配置:

# 微信机器人API认证(必填)
TOKEN=填写你的token值 (获取地址:www.wechatbot.online)
2. 启动服务
python main.py
3. 接收订单消息

系统通过实时连接websocket服务器(WEBSOCKET_URI,间.env配置文件!) 接口接收微信群的回调消息。

4. 自动处理

系统会自动:

  1. 解析消息内容
  2. 识别订单类型(新单/修改单/取消单)
  3. 提取关键信息
  4. 更新Excel表格
  5. 在群里回复处理结果通知
5. 查看结果

处理后的订单数据保存在 data/订单汇总_YYYY年MM月.xlsx 文件中。

订单信息提取规则

新单处理

从消息中提取以下信息:

  • 下单日期:订单发布的日期
  • 酒店名称:酒店字段后的内容
  • 间夜:间夜字段后的内容
  • 入住人:名字电话字段中的姓名
  • 入住日期:入住期或入住日期字段
  • 发单客服:客服字段后的内容
  • 订单金额:金额字段后的数值(支持加法计算)
  • 订单号:用于唯一标识订单
修改单处理
  • 根据订单号查找原订单
  • 更新变更的字段
  • 在备注中记录修改时间
取消单处理
  • 根据订单号查找原订单
  • 在原订单下方插入一行
  • 金额显示为负数
  • 备注标记为"取消订单"

并发处理

系统使用线程池处理订单,默认配置:

  • 工作线程数:5个
  • 队列模式:FIFO(先进先出)
  • 线程安全:使用锁机制保护Excel文件操作

可在 order_processor.py 中调整 max_workers 参数来改变并发数。

Excel表格格式

下单日期酒店名称间夜入住人入住日期发单客服订单金额订单号备注
2026-01-12珠海海泉湾…1间1晚李晓磊2026-12-23115905008…

注意事项

  1. 字段识别:系统支持"入住期"和"入住日期"两种字段名
  2. 金额计算:支持"399+50升级"这样的加法表达式
  3. "和"符号:系统会自动忽略消息中的"和"字符
  4. 日期格式:支持"12.23"和"12月23日"两种格式
  5. 并发安全:多个订单同时处理时,系统会自动排队处理
  6. 消息回复:订单处理完成后会自动在群里回复通知
    • 新单成功:订单编号:xxxxx 已录入
    • 新单重复:订单编号:xxxxx 已存在,无法重复录入
    • 修改单成功:订单编号:xxxxx 已更新
    • 修改单失败:订单编号:xxxxx 不存在,请核对后再更新!
    • 取消单成功:订单编号:xxxxx 已取消
    • 取消单失败:订单编号:xxxxx 不存在,无法取消!

消息回复功能

系统在订单处理完成后会自动调用微信机器人API发送通知消息到群里。

配置要求
  1. 确保 .env 文件中配置了正确的 TOKEN token

日志

系统日志保存在 log/ 目录下:

  • main.log:主程序日志
  • schedule.log:消息调度日志
  • order_processor.log:订单处理日志

配置

环境变量配置在 .env 文件中(如需要)。

故障排查

订单未录入
  1. 检查消息格式是否正确
  2. 查看日志文件中的错误信息
  3. 确认订单号是否存在
Excel文件打开失败
  1. 确保Excel文件未被其他程序占用
  2. 检查data目录的写入权限
并发处理异常
  1. 查看 order_processor.log 日志
  2. 检查线程池配置
  3. 确认系统资源是否充足
消息回复失败
  1. 检查 .env 文件中的 TOKEN 配置是否正确!
  2. 登录官网 https://www.wechatbot.online,查看微信是否在线!
  3. 查看 order_processor.log 日志中的错误信息!
  4. 注意:消息回复失败不影响订单录入功能!

技术支持

如有问题,请查看:

  1. 项目日志文件
  2. 项目需求及回调信息.md 文档

版本历史

  • v1.0.0 (2026-01-12)
    • 初始版本
    • 支持新单、修改单、取消单处理
    • 实现并发处理机制
    • 线程安全的Excel操作
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

@Ma

您的鼓励就是我最大的动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值