美文网首页PythonDD收藏文章
Python开发QQ聊天机器人——进阶的yes酱部署与调教

Python开发QQ聊天机器人——进阶的yes酱部署与调教

作者: 走错说爱你 | 来源:发表于2021-07-12 23:19 被阅读0次

由于Go-CQHTTP的更新,老版的yes酱存在诸多问题(若还是想使用以前的yes酱请移步博客),让新手望而却步,因此,这里开源自己魔改的yes酱,希望能够造福群友和大家一起交流学习Python

新版yes酱说明

魔改后的yes酱生存的环境如下:

  • Python 3.7+
  • Go-CQHTTP 1.0.0.4 beta

新版yes酱在原有基础上基本保持不变,改动如下:

  • 通信方式改为正向websocket
  • 兼容最新版Go-CQHTTP
  • 更改协议为nonebot
  • 新增添加好友自动处理函数
  • 封装了合并转发功能
  • 封装了私聊功能
  • 修复原yes酱猫猫图发送失败问题
  • 新增了几个禁言的字段

准备工作

QQ号注册

一个手机号能够绑定十个QQ号,所以直接在官方网站注册QQ即可,注册完之后记得马上登陆并记下QQ号,最好保持活跃,否则会被收回

程序下载

github下载go-cqhttp,windows 64位选择go-cqhttp_windows_amd64.exe,linux选择go-cqhttp_1.0.0-beta4_linux_amd64.deb

下载Go-CQHTTP

github下载新版Yes酱源码,可以使用Git下载,也可以直接网页下载解压即可:

下载Yes酱源码

在cmd窗口输入命令安装python的websocket库:

pip install websocket
pip install websocket-client

新版yes酱配置

go-cqhttp配置

Windows的话直接双击运行下载好的EXE程序,会出现如图所示界面:


双击运行EXE

输入数字2,按下回车:


输入2回车

然后就可以看到本地多了个文件config.yml

生成配置文件

Linux的话直接sudo dpkg -i go-cqhttp_0.9.40-fix5_linux_amd64.deb安装框架,然后在任意处使用命令go-cqhttp启动程序,重复上述操作即可

编辑该文件,更改QQ号和密码即可,其他都不用改。看一下注释就能明白,这里不做赘述。

Yes酱配置

打开yes酱所在的文件夹,找到config.json文件,配置如下:

{
    "path":"E:\\test\\YesBot_ws_Go_CQHTTP\\pic\\mao\\",
    "ban_words":["科学上网","黑产","翻墙","huangse","@全体成员"],
    "apikey":"",
    "group":[123456789],
    "self_qq":"987654321"
}

其中:

  • path为项目文件夹下的pic文件夹下的mao文件夹地址,注意使用双反斜杠,末尾也有一个双反斜杠

  • ban_words为想要yes酱禁言的关键词

  • apikey为yes酱调用的setuAPI,可以去申请一个,也可以不填,申请方式如图所示:

    apikey申请
  • group为想要yes酱管理的群号,可以填写多个,用英文逗号分隔即可

  • self_qq为之前注册申请想要用来当机器人的QQ号

程序运行

go-cqhttp运行

windows的话直接右键,以管理员权限运行即可:


运行go-cqhttp

Linux的话,使用命令nohup go-cqhttp &后台运行:

linux运行

然后的步骤和老版的Go-CQHTTP一样,大家看看之前的截图就行了。

初次运行会自动创建设备:


创建设备

然后需要验证新设备以登录:


验证新设备登录

这里输入1按下回车:

回车之后

鼠标选中-><-之间的网址,按下ctri+shift+C复制链接,然后打开浏览器,在地址栏粘贴链接进入验证页面,在页面空白处右键单击检查

验证页面

选择network等候抓包:

选择network

然后手动拖动滑块,完成验证,查看右边抓到的包:


验证的包

其中的ticket即为需要在命令行输入的字符串。双击该字符串选中复制,随便找个地方粘贴出来看看再复制一遍,然后在命令行窗口单击鼠标右键即可粘贴进去,然后回车,即可看到登陆成功:

登陆成功

如果还是不行的话,就将config.yml的配置文件中的密码字段留空,然后启动,之后选择扫码登录即可

yes酱启动

windows的话在yes酱根目录下启动cmd命令行窗口,输入命令启动:

python main.py

linux的话使用命令nohup python main.py &启动,可后台运行

yes酱启动:

yes酱启动
静等出现连接成功字样即可

程序效果

在群聊里艾特yes酱即可:


群聊

在群里艾特yes酱发送help即可获得菜单:


help菜单

添加yes酱为好友之后,即可私聊开始调教(这里diy了一下yes酱回答的话语,原句是添加成功!):

私聊

相关文章

网友评论

    本文标题:Python开发QQ聊天机器人——进阶的yes酱部署与调教

    本文链接:https://www.haomeiwen.com/subject/scadpltx.html