引子
今天看后台总结,已经来论坛30天,阅读1天了
俺也算是论坛老人了,于是,俺觉得是时候得整点干货才能匹配俺的身份(bushi)
好歹俺也就两件事不会,这也不会,那也不会,想了想,俺决定把之前折腾wechat机器人项目的屎山代码整理整理发一下吧。
正文
一 什么是WeChat
略
警告!警告!警告!
前不久俺还收到了官方的亲切问候,所以请阅读免责声明后继续:
免责声明
本工具仅供学习和技术研究使用,不得用于任何商业或非法行为,否则后果自负。
本工具的作者不对本工具的安全性、完整性、可靠性、有效性、正确性或适用性做任何明示或暗示的保证,也不对本工具的使用或滥用造成的任何直接或间接的损失、责任、索赔、要求或诉讼承担任何责任。
本工具的作者保留随时修改、更新、删除或终止本工具的权利,无需事先通知或承担任何义务。
本工具的使用者应遵守相关法律法规,尊重微信的版权和隐私,不得侵犯微信或其他第三方的合法权益,不得从事任何违法或不道德的行为。
本工具的使用者在下载、安装、运行或使用本工具时,即表示已阅读并同意本免责声明。如有异议,请立即停止使用本工具,并删除所有相关文件。
二 项目地址
三 简单上手
1 前置工作
- 一台windows系统的电脑
- 安装anaconda,并激活环境。(建议,非必需)
- python环境要求3.9及以上
- 安装指定版本wechat,并关闭更新。
- 注册一个小号,并实名认证。
2 客户端配置
安装WeChatFerry
pip install --upgrade wcferry
安装WeChatRobot
如果你的系统是amd64位,可直接点击下载:最新版本
安装对应版本的微信:点击下载
注意:WeChat、WechatFerry以及WechatRobot三者的版本要一致否则会报错
python -m pip install -U pip
pip install -r requirements.txt
# ChatGLM 还需要安装一个 kernel
ipython kernel install --name chatglm3 --user
初次运行
python ./main.py
如果你配置的环境和软件版本都没有问题,wechat程式会被自动拉起,请使用小号登录,程式会在目录下自动生成config.yaml。
这时机器人是无法正常工作的,还需要ctrl+c退出进程后配置文件。
配置文件
- config.yml
设置机器人触发机制,群白名单,接入大模型的配置都在这里。 - robot.py
消息处理程式,你可以自定义消息处理方式,如关键词触发,可玩性很高。 - main.py
在这里添加定时任务,如每天早上定时发送天气预报和新闻。
正常运行
python ./main.py
现在,你可以用你的机器人上网冲浪了!
当然,各位佬可以直接参照WechatFerry文档建立自己的Robot。我写的robot.py已经放下面了,参照官方给的模板修补得来,俺是编程新手,这算是俺真正意义上接触的第一个项目,代码水平非常一般,欢迎批评指正 。
四 我的代码
我前后花了大概2个月研究这个项目,最开始啥也不会,连import都不晓得是干啥的,最开始用gpt写一个请求天气的代码都要半天,就这么摸爬滚打写了下面一堆屎山代码,啧啧啧,居然有1k多行(看看这一大堆库 )。
代码里我蚂蚁搬家自己加了35个功能,但因为我有2个月没有看了,可能有部分API失效了,大家如果感兴趣的话还请自行测试。