qq机器人在pycharm下安装graia-ariadne及如何具体运行第一个插件

这篇主要是群菜萌佬教的,很细致,很耐心,再次感谢。

参考教程依然是:

1.默认mirai已经配置安装好,如果没有,请看

https://mp.csdn.net/mp_blog/creation/editor/128831449

打开mal.cmd,可以登录你的机器人运行,并能收到消息。

2.python版本3.8以上,你已经下好了pycharm并会简单使用,起码会创建一个.py文件

3.jdk11以上就不用说了,安装配置mirai-api-http,Mirai 的安装与配置 | GraiaX 文档

4.复制下面代码到新建项目的新建py文件下,代码是别处抄来,具体可见

快速上手 | GraiaX 文档

from creart import create

from graia.ariadne.app import Ariadne

from graia.ariadne.connection.config import (

    HttpClientConfig,

    WebsocketClientConfig,

    config,

)

from graia.ariadne.event.message import GroupMessage

from graia.ariadne.message.chain import MessageChain

from graia.ariadne.model import Group

from graia.broadcast import Broadcast

bcc = create(Broadcast)

app = Ariadne(

    connection=config(

        114514,  # 你的机器人的 qq 号

        "GraiaxVerifyKey",  # 填入你的 mirai-api-http 配置中的 verifyKey

        # 以下两行(不含注释)里的 host 参数的地址

        # 是你的 mirai-api-http 地址中的地址与端口

        # 他们默认为 "http://localhost:8080"

        # 如果你 mirai-api-http 的地址与端口也是 localhost:8080

        # 就可以删掉这两行,否则需要修改为 mirai-api-http 的地址与端口

        HttpClientConfig(host="http://11.45.1.4:19810"),

        WebsocketClientConfig(host="http://11.45.1.4:19810"),

    ),

)

@bcc.receiver(GroupMessage)

async def setu(app: Ariadne, group: Group, message: MessageChain):

    if message.display == "你好":

        await app.send_message(

            group,

            MessageChain(f"不要说{message.display},来点涩图"),

        )

app.launch_blocking()

上面这两行代码需要按照提示改动:

 114514,  # 你的机器人的 qq 号

        "GraiaxVerifyKey",  # 填入你的 mirai-api-http 配置中的 verifyKey

 开始会报错,像这样下面有红线,这是因为没有安装好graia-ariadne接下来,跟着做

5.安装graia-ariadne

打开pycharm,在pychram的Terminal运行这行代码:

 ./venv/Scripts/pip install graia-ariadne[full]

完成了大概是这样

 然后就没错了,红线波浪线消失,在pycharm运行一下


如果你的机器人还是不说话,在一切端口默认的情况下,把这两行注释掉就可以了

#HttpClientConfig(host="http://11.45.1.4:19810"),
#WebsocketClientConfig(host="http://11.45.1.4:19810"),


 成功

补充:上面水平线里的只是巧合,菜狗佬又补充了一点,仔细看注释文档

mirai-api-http 监听的是 localhost:8080,文档故意给了一个11.14.51.4是特意给错的,mah监听本地(类似127.0.0.1),graia连接的是其他的IP,所以连不上,机器人也不会回复消息。

学无止境,如果有不会的,暂且先记下,后来可能慢慢就能理解了。
 

猜你喜欢

转载自blog.csdn.net/weixin_52435020/article/details/128831708