美文网首页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