项目源码
通过网盘分享的文件:微信群酒店订单信息自动录入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. 自动处理
系统会自动:
- 解析消息内容
- 识别订单类型(新单/修改单/取消单)
- 提取关键信息
- 更新Excel表格
- 在群里回复处理结果通知
5. 查看结果
处理后的订单数据保存在 data/订单汇总_YYYY年MM月.xlsx 文件中。
订单信息提取规则
新单处理
从消息中提取以下信息:
- 下单日期:订单发布的日期
- 酒店名称:酒店字段后的内容
- 间夜:间夜字段后的内容
- 入住人:名字电话字段中的姓名
- 入住日期:入住期或入住日期字段
- 发单客服:客服字段后的内容
- 订单金额:金额字段后的数值(支持加法计算)
- 订单号:用于唯一标识订单
修改单处理
- 根据订单号查找原订单
- 更新变更的字段
- 在备注中记录修改时间
取消单处理
- 根据订单号查找原订单
- 在原订单下方插入一行
- 金额显示为负数
- 备注标记为"取消订单"
并发处理
系统使用线程池处理订单,默认配置:
- 工作线程数:5个
- 队列模式:FIFO(先进先出)
- 线程安全:使用锁机制保护Excel文件操作
可在 order_processor.py 中调整 max_workers 参数来改变并发数。
Excel表格格式
| 下单日期 | 酒店名称 | 间夜 | 入住人 | 入住日期 | 发单客服 | 订单金额 | 订单号 | 备注 |
|---|---|---|---|---|---|---|---|---|
| 2026-01-12 | 珠海海泉湾… | 1间1晚 | 李晓磊 | 2026-12-23 | 11 | 590 | 5008… |
注意事项
- 字段识别:系统支持"入住期"和"入住日期"两种字段名
- 金额计算:支持"399+50升级"这样的加法表达式
- "和"符号:系统会自动忽略消息中的"和"字符
- 日期格式:支持"12.23"和"12月23日"两种格式
- 并发安全:多个订单同时处理时,系统会自动排队处理
- 消息回复:订单处理完成后会自动在群里回复通知
- 新单成功:订单编号:xxxxx 已录入
- 新单重复:订单编号:xxxxx 已存在,无法重复录入
- 修改单成功:订单编号:xxxxx 已更新
- 修改单失败:订单编号:xxxxx 不存在,请核对后再更新!
- 取消单成功:订单编号:xxxxx 已取消
- 取消单失败:订单编号:xxxxx 不存在,无法取消!
消息回复功能
系统在订单处理完成后会自动调用微信机器人API发送通知消息到群里。
配置要求
- 确保
.env文件中配置了正确的TOKENtoken
日志
系统日志保存在 log/ 目录下:
main.log:主程序日志schedule.log:消息调度日志order_processor.log:订单处理日志
配置
环境变量配置在 .env 文件中(如需要)。
故障排查
订单未录入
- 检查消息格式是否正确
- 查看日志文件中的错误信息
- 确认订单号是否存在
Excel文件打开失败
- 确保Excel文件未被其他程序占用
- 检查data目录的写入权限
并发处理异常
- 查看
order_processor.log日志 - 检查线程池配置
- 确认系统资源是否充足
消息回复失败
- 检查
.env文件中的TOKEN配置是否正确! - 登录官网 https://www.wechatbot.online,查看微信是否在线!
- 查看
order_processor.log日志中的错误信息! - 注意:消息回复失败不影响订单录入功能!
技术支持
如有问题,请查看:
- 项目日志文件
项目需求及回调信息.md文档
版本历史
- v1.0.0 (2026-01-12)
- 初始版本
- 支持新单、修改单、取消单处理
- 实现并发处理机制
- 线程安全的Excel操作
294

被折叠的 条评论
为什么被折叠?



