抱歉,您的浏览器无法访问本站
本页面需要浏览器支持(启用)JavaScript
了解详情 >

PyIBot QQ 机器人使用教程

配置 Mirai

该机器人使用 mirai 进行收发消息,因此需要先配置 mirai.

配置 JAVA 环境

安装 >= 1.8 版本的 OpenJDK 并添加 环境变量。

注意:请安装 OpenJDK 而不是甲骨文(Oracle)的jdk。原因

下载 mirai-console-loader 启动器

mirai-console-loader 简称 mcl,是 mirai-console 的官方一键启动器。

由于想要运行 Mirai 需要准备 mirai-core, mirai-console 和 mirai-console-terminal, 然后还需要通过一大串指令来启动它。因此官方为我们准备了 mcl 一键启动它,我们只需要下载它即可。

下载完成 mcl 之后解压,我们可以得到下列文件

This is a picture without description

进入该目录,让我们启动它

Linux
1
./mcl
Windows
1
.\mcl.cmd

启动后它会自动下载一堆依赖,当你看到 mirai-console started successfully. 就代表你已经启动 mirai-console 成功了😘

This is a picture without description

接下来让我们先关掉它。

配置 mirai-api-http

首先前往项目地址下载这个jar包(下载 1.x 版本哦)

然后将其放到 plugins 目录下

This is a picture without description

现在你需要再次启动 mcl 以便自动生成 mirai-api-http 的配置文件。

启动后就关掉哦~

编辑 mirai-api-http 配置文件,一般只需要自定义一下 authKey 就可以了,下面是示例配置

config/net.mamoe.mirai-api-http/setting.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
cors:
- '*'
host: 0.0.0.0
port: 8080 # 端口号(对公网需开放对应 tcp 端口)
authKey: customverify # 验证密钥,随便设定
cacheSize: 4096
enableWebsocket: true
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: {}

配置自动登录

编辑 AutoLogin.yml 配置文件,推荐把 protocol 修改为 ANDROID_PAD, 示例配置:

config/Console/AutoLogin.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
accounts: 
- # 账号, 现只支持 QQ 数字账号
account: 123456
password:
# 密码种类, 可选 PLAIN 或 MD5
kind: PLAIN
# 密码内容, PLAIN 时为密码文本, MD5 时为 16 进制
value: password
# 账号配置. 可用配置列表 (注意大小写):
# "protocol": "ANDROID_PHONE" / "ANDROID_PAD" / "ANDROID_WATCH"
# "device": "device.json"
configuration:
protocol: ANDROID_PAD
device: device.json

接下来再次运行 mcl 就可以登录了。

登录验证问题

若你登录过程中遇到登录验证等问题,推荐使用 MiraiAndroid 成功登录你对应的 QQ 号后,导出对应 device.json 并复制到 bots/QQ账号 目录。

配置 PyIBot

前面我们已经成功运行 mcl 了,接下来就要开始配置机器人核心程序了。为什么叫它核心程序?只有一个 mirai 也不能干什么事。

安装 MySQL

PyIBot 使用 MySQL 来存储 99.99% 的数据,这里推荐安装 MySQL 8.0+, 在 PyIBot 开发测试中,所用版本均为 8.0。

具体安装方法请移步搜索引擎检索

安装完成后需要创建一个数据库,例如:qqbot

克隆项目

1
git clone https://github.com/PyIBot/Application.git PyIBot

安装依赖

进入 PyIBot 目录,执行下列命令安装依赖

1
pip install -r requirements.txt

建议使用 Virtualenv 或 Anaconda 等虚拟环境工具

配置基本信息

app/core 目录的 env.config.py 文件复制或重命名为 config.py, 然后补全它。

app/core/config.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
# ============================示例配置文件=================================
# 使用需将其重命名为config.py,并填写修改其中的配置

# QQ账号基本配置
HOST = 'http://127.0.0.1:8080' # 机器人mirai地址(str)
AUTHKEY = '' # 机器人mirai验证密钥(str)
QQ = 'bot qq' # 机器人QQ(str)
MASTER_QQ = '' # 主人QQ(str)

# 数据库基本配置
MYSQL_HOST = '127.0.0.1' # 数据库地址(str)
MYSQL_PORT = 3306 # 数据库端口(int)
MYSQL_USER = 'root' # 数据库用户名(str)
MYSQL_PWD = '123456' # 数据库密码(str)
MYSQL_DB = 'qqbot' # 数据库名(str)

# github仓库监听配置(监听仓库请通过指令配置) [即将支持在线配置]
REPO_GROUP = [] # 消息推送群聊(int)
REPO_TIME = '*/10 * * * *' # 监听时间间隔(cron表达式)

安装插件

方法一

你可以前往插件仓库下载所需插件至 app/plugin 目录,并在该目录的 __init__.py 文件中添加对应插件文件名。

方法二

你可以直接将插件仓库克隆到一个目录中,然后将需要的插件复制到 app/plugin 目录,并在该目录的 __init__.py 文件中添加对应插件文件名。

方法三

使用 Web 端一键安装(暂无)。

你也可以自行在该目录编写其他插件,同时欢迎你将你的插件 PR 到插件仓库

运行 PyIBot

请确保你的 mirai 已运行

1
python main.py

若你在安装依赖时使用了虚拟环境,你还需要先切换到对应虚拟环境中。

评论



本站使用 Volantis 作为主题 | 由 Hexo 强力驱动 | 由 腾讯云 CDN 分发

赣 ICP 备 2020013616