手把手自制基于 ItChat 的微信机器人——相册服务篇
在本篇博客中,我将向大家展示如何创建一个基于 Python 的 ItChat 库的微信机器人。这个项目将涵盖从环境设置到功能实现的完整流程。无论你是对微信自动化感兴趣的开发者,还是想尝试新的 Python 项目,这篇博客都将为你提供详细的指导。
因为项目是持续更新的,机器人目前实现了相册服务,机器人的功能会随着我的更新而更新,我会坚持每天更新(尽量)
项目概述
目前的机器人具备以下主要功能:
-
相册管理:
- 创建相册:通过指令创建新的相册。
- 删除相册:根据需要删除指定的相册。
- 上传图片:将图片上传到指定的相册。
- 删除图片:从相册中删除指定的图片。
-
图片展示:
- 展示相册列表:列出所有现有的相册。
- 展示相册中的图片:列出指定相册中的所有图片。
- 展示特定图片:发送指定的图片给用户。
-
消息处理:
- 指令解析:处理用户发送的指令,调用相应的功能。
- 图片接收:在上传图片的指令触发后,接收并保存用户发送的图片。
项目结构
为了组织清晰,项目分为几个模块:
main.py
:负责启动 ItChat 机器人,处理消息并调用相关功能。commands.py
:解析用户的指令并决定调用哪个功能模块。pictools.py
:实现具体的相册管理和图片处理功能。upload_state.py
:管理图片上传的状态和相关信息。datas/相册/
:存储相册和图片的目录。templates/index.html
:前端模板。
接下来是如何自己运行项目了,我会一步一步讲,尽量详细,不懂直接问,评论区或者私信。
环境准备
-
安装依赖:
pip install itchat flask requests
⚠️这里有个很重要的点,因为itchat早已无法使用,所以这里提供了新版的itchat库,但是需要进行手动更换,具体教程请查看我的另一篇博客:掌握微信自动化:深入探索 itchat 库的核心功能与应用场景(itchat修复版)
⚠️itchat库是一定要更换的,否则无法进行下去。 -
创建虚拟环境(推荐,非必须):
python -m venv venv
-
激活虚拟环境(第2步创建虚拟环境没做,这一步也不用):
- Windows:
venv\Scripts\activate
- macOS/Linux:
source venv/bin/activate
- Windows:
运行机器人
-
运行项目:
python app.py
-
打开可视化webUI:
不出意外的话会打开网页,或者自行手动打开:http://127.0.0.1:5000
界面如下:
-
webUI界面介绍:
- 启动机器人:
按下启动机器人后会跳出二维码登入你的微信,为了安全,请勿使用大号。 - 其他组件:
日志会显示在网页内,clear会清除日志内容,copy会保存日志并生成txt文件到本地。
- 启动机器人:
核心功能实现
-
相册管理:
- 使用指令
/create
创建新相册,使用/删除
删除相册或图片,使用/上传
上传图片到指定相册。
- 使用指令
-
图片展示:
- 使用
/show
指令查看相册列表或展示指定相册中的图片。
- 使用
-
消息处理:
- 解析用户发送的消息,通过指令触发相应的功能模块,并处理图片上传和展示,更加详细的指令介绍输入
/help
。
- 解析用户发送的消息,通过指令触发相应的功能模块,并处理图片上传和展示,更加详细的指令介绍输入
项目发布
项目我会发布在github上持续更新,不想研究项目和帮助作者改进项目的,我在这里提供打包好的程序
直接双击bat文件,记得要提前创建好环境!!!。
如果在CSDN上无法获得的,关注微信公众号:吃点李子,后台私信我。
程序不方便打包为exe,所以电脑必须要有python环境,笔者使用的是python3.10.1
这里提供我使用的python版本:python3.10.1 密码:g17f
😁Python如何安装配置环境这个不用我多说吧,实在不会直接问我。
克隆仓库:git clone https://github.com/liyihao1110/wechat_robot.git
💕项目刚开始做,bug可能比较多,请到时候在公众号或者github上提交bug利于作者改进。
总结
通过介绍,应该也都了解了如何创建一个微信机器人项目。项目包括了相册管理、图片处理和消息处理等功能,结构清晰且易于扩展。希望这篇博客能为你的项目开发提供帮助,让你能够快速上手并实现自己的需求。如果你有任何问题或建议,请随时在评论区留言!
如果对你有帮助,三连速更,项目更新中。
源码以及任何困惑请联系公众号:吃点李子