windons下基于Mirai+python的QQ机器人部署教程

基于Mirai+python的QQ机器人部署教程

本环境出现不兼容问题,而且作者随缘更新了,建议大家可以尝试一下nonebot2,感觉挺好用的,nonebot这个的话文档比较详细一些,大家可以自己选择。

配置环境
  1. java环境 使用openJDK 版本大于11,本人使用的11.0.2
  2. Python环境 瞎整一个就完事,本人装的Python 3.8.7
  3. 下载启动器mcl,解压,启动,下载一些东西之后成功启动
    在这里插入图片描述
    启动之后的文件目录:
    在这里插入图片描述
    输入?可以查询一些功能
    在这里插入图片描述
    尝试登陆,输入login yourqq yourpassword,出现以下情况
    在这里插入图片描述

还可能出现滑块验证,需要 下载mirai-login-solver-selenium将下载的jar文件放入plugins文件夹中,需要先安装 Chrome 浏览器,输入ticket通过验证即可.
滑块验证教程(需要使用Chrome浏览器)
通过验证即可登陆
4. 每次都要输入账号密码肯定很烦,参考autologin命令add一个账号即可,下次启动时就会自动登录了。(建议把登录qq的设备锁啥的都关掉,比较方便)
5. 下载mirai-api-http,将下载的jar文件放入plugins文件夹中,对接python,重启后会在config生成其对应的配置文件,注意配置好authKey(随意,不改的话似乎会出问题…),端口号如果被占用就换个其他的,具体的配置说明请参考官网

cors: 
  - '*'
host: 0.0.0.0
port: 8080
authKey: 123456
cacheSize: 4096
enableWebsocket: false
report: 
  enable: false
  groupMessage: 
    report: true
  friendMessage: 
    report: true
  tempMessage: 
    report: true
  eventMessage: 
    report: true
  destinations: []
  extraHeaders: {}
heartbeat: 
  enable: false
  delay: 1000
  period: 15000
  destinations: []
  extraBody: {}
  extraHeaders: {}
  1. 安装 python 操作 mirai-api-http 接口的模块
pip install graia-application-mirai

至此环境搭建就完成了,可以愉快的使用python调用各种接口了

小例子

参考官网给出的小例子,给你的小机器人发送一个消息,他会回一个Hello,world!

from graia.broadcast import Broadcast
from graia.application import GraiaMiraiApplication, Session
from graia.application.message.chain import MessageChain
import asyncio
from graia.application.message.elements.internal import Plain
from graia.application.friend import Friend
loop = asyncio.get_event_loop()
bcc = Broadcast(loop=loop)
app = GraiaMiraiApplication(
    broadcast=bcc,
    connect_info=Session(
        host="http://localhost:8080", # 填入 httpapi 服务运行的地址
        authKey="123456", # 填入 authKey
        account=123456, # 你的机器人的 qq 号
        websocket=True # Graia 已经可以根据所配置的消息接收的方式来保证消息接收部分的正常运作.
    )
)
@bcc.receiver("FriendMessage")
async def friend_message_listener(app: GraiaMiraiApplication, friend: Friend):
    await app.sendFriendMessage(friend, MessageChain.create([
        Plain("Hello, World!")
    ]))
app.launch_blocking()

接下来你就可以发挥自己的想象做出一些有趣的事情啦~
api参考文档

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值