用Python开发基于Mirai框架的QQ机器人-1. 安装与搭建

  1. 首先,要安装mirai-console-loader,以下简称mcl,github仓库位置:mirai-console-loader。
  2. 下载解压后,用cmd进入mcl的目录,运行mcl就可以了,设置就一路按回车就默认的就行。
  3. 当出现mirai-console started successfully.之后,输入命令login qq号 qq密码,就可以登录了,不过第一次运行的时候会弹一个滑块验证,需要装selenium插件才可以验证通过。
  4. github仓库位置:mirai-login-solver-selenium(需要先安装chrome浏览器),也可以用以下方式来安装:
    先关掉mcl的窗口,然后用命令行运行以下代码,运行完之后关掉,然后再重新运行mcl,它就会自动下载插件。
mcl --update-package net.mamoe:mirai-login-solver-selenium --channel nightly --type plugin
  1. 接下来安装mirai-api-http,有了它,才能用python来写机器人的功能,github仓库位置:mirai-api-http,把下载的jar包,放到mcl文件夹下的plugins里面就行了。
  2. 对mirai-api-http进行配置,打开config\net.mamoe.mirai-api-http下的setting.yml,把authKey随便改一个,这个之后要用到,enableWebsocket改成true,重启mcl
  3. 接下来,就可以使用graia-application-mirai来写机器人代码了,可以使用pip install来安装。
  4. 复制以下代码,运行之后,向你的机器人随便发送一条消息,如果机器人回复hello world!,就说明能正常运行了。
import asyncio, graia.scheduler
from graia.broadcast import Broadcast
from graia.application import GraiaMiraiApplication, Session
from graia.application.friend import Friend
from graia.application.message.chain import MessageChain
from graia.application.message.elements.internal import Plain

loop = asyncio.get_event_loop()
bcc = Broadcast(loop = loop)
app = GraiaMiraiApplication(broadcast = bcc,
                            connect_info = Session(host = 'http://localhost:8080', # 填入httpapi服务运行的地址
                                                authKey = 'abcdefg', # 填入authKey
                                                account = 1234567, #你的机器人的qq号
                                                #Graia已经可以根据所配置的消息接收的方式来保证消息接收部分的正常运作.
                                                websocket = True
                                                )
                            )
#处理群消息
@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怎么用,这个是graia的api文档。

你可能感兴趣的:(QQ,bot,python)