如何搭建一个属于自己的QQ机器人[真寻机器人]
如何搭建一个QQ机器人【真寻机器人】
目录
- 安装go-cqhttp
- 安装Postgresql数据库
- 安装真寻bot
- Linux下持久化运行(Windows用户请跳过)
- 安装使用WebUi(可选)
安装go-cqhttp
什么是go-cqhttp
go-cqhttp 是什么?
使用OneBot协议实现的无头QQ,接受消息发往后端处理你也可以理解为QQ客户端
如何安装go-cqhttp
从Mrs4s / go-cqhttp (opens new window)的Release中下载与你系统对应的最新版本
由于github属于半墙状态,所以下载会比较慢,您可以选择耐心等待,也可以安装fastgithub(opens new window)来提升你的下载速度
将你下载好的文件存放到任意一个文件夹
Windows:
直接双击文件运行
点击确定后,使用安全启动脚本启动即可
Linux:
下载您对应的压缩包后使用
tar -zxvf 文件名称.tar.gz
解压完毕后请检查此目录下是否存在名为
go-cqhttp
的文件 若并没有此文件请再次尝试以上步骤,若有此文件,请使用
./go-cqhttp
命令启动首次运行会让你选择通信方式,选择
3
(反向 Websocket 通信),会生成一个配置文件config.yml打开config.yml文件,将uin修改为bot账号
在config.yml文件中将
universal: ws://your_websocket_universal.server
修改为universal: ws://127.0.0.1:8080/onebot/v11/ws/
重启go-cqhttp后登录即可
因真寻机器人项目使用了语音文件等,该音频需要依赖ffmpeg
1
2 Ubuntu:
sudo apt install -y ffmpeg没有 ws-reverse 怎么办?
第二步的配置文件选错了,删除config.yml重新生成即可
安装Postgresql数据库
Windows
- 在Postgresql下载页面 (opens new window)下载对应系统的Postgresql安装程序
- 选择安装路径,一路next,中途会让你设置以下postgres用户的密码
- 在安装目录下找到pgAdmin,使用pgAdmin连接数据库,创建连接,新建数据库即可
Linux (以Ubuntu为例)
安装Postgresql
1
2sudo apt update
sudo apt install postgresql postgresql-contrib创建数据库和用户
1
2
3
4
5
6sudo su - postgres # 切换用户
psql
# 用户名↓ # 密码↓
CREATE USER uname WITH PASSWORD 'zhenxun'; # 创建用户
# 数据库名称↓ 所有者↓
CREATE DATABASE testdb OWNER uname; # 创建数据库到这一步数据库已经可以正常使用了!以下步骤主要用于外网可以连接入服务器数据库,可以等需要的时候再配置。
编辑数据库配置文件(路径请已自己的为准)
- 打开数据库配置文件
1
vim /etc/postgresql/12/main/postgresql.conf
找到 listen_addresses: ‘*’ 取消前面的 # 注释,使用:wq保存退出
建议公网ip同时修改 Port
打开 pg_hba.conf
1
vim /etc/postgresql/12/main/pg_hba.conf
- 在最下添加或修改后,使用:wq保存退出
1
2# 允许任意用户从任意机器上以密码方式访问数据库
host all all 0.0.0.0/0 md5
- 打开数据库配置文件
- 重启数据库
1
sudo systemctl restart postgresql
安装真寻bot
版本警告
真寻Bot需要python环境为 python3.8 或 python3.8
开始部署
从 HibiKier / zhenxun_bot (opens new window)clone代码 或 直接下载 压缩包 (opens new window)解压
安装依赖包
1
2
3
4
5
6
7
8
9
10pip3 install poetry # 使用poetry管理python包
poetry install # 安装依赖
poetry shell # 进入虚拟环境
# playwright 需要安装额外的系统环境,在命令行输入以下
playwright install chromium
该命令在win下无需输入
playwright install-deps chromium设置超级用户,打开 .env.dev 文件,在SUPERUSERS中添加自己的QQ
1
SUPERUSERS=["123456789"]
打开 configs/config.py 填写数据库数据
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22# 数据库(必要)
# 如果填写了bind就不需要再填写后面的字段了#)
# 示例:"bind": "postgresql://user:[email protected]:5432/database"
bind: str = "" # 数据库连接链接
sql_name: str = "postgresql"
user: str = "" # 数据用户名
password: str = "" # 数据库密码
address: str = "" # 数据库地址
port: str = "" # 数据库端口
database: str = "" # 数据库名称
############################################################
### 如果你是与教程一模一样的命令代码,且数据库也在该服务器上 ###
############################################################
# 可以直接复制以下配置
bind: str = "" # 数据库连接链接
sql_name: str = "postgresql"
user: str = "uname"
password: str = "zhenxun"
address: str = "127.0.0.1"
port: str = "5432"
database: str = "testdb"启动真寻,会在 configs 和 data/configs 目录下生成各种配置文件
1
2
3python3 bot.py
# or
python bot.py- 打开 configs/config.yaml,里面包含的是各种插件的配置项,填写完毕后重启真寻Bot
Linux下持久化运行
恭喜!经历困难之后到了最后一步,那就是持久化运行 0v<
本节教程为Linux持久化运行教程,Windows可直接跳过
教程中使用的是较为简单的Screen,如果你有其他工具的使用经验,可以跳过本节。
即刻开始(以Ubuntu为例)
安装screen
1
sudo apt install screen
创建会话
1
screen -S zhenxun
进入真寻目录
1
cd 真寻的存放真寻机器人的目录
启动!
1
2poetry shell # 进入虚拟环境
python3 bot.py
如果退出或关闭后
使用以下命令恢复会话
1 screen -r zhenxun
安装使用WebUi
这一步并不是必须的!只是为了可视化方便管理,并且webUi也还未完善
因为真寻机器人的web项目直接使用vue run的,所以该教程也以vue run为主,其他方式如nginx可略过
别忘了打开服务器端口,默认是8081,修改端口在vue.config.js文件中!
开始安装
安装nodejs
略(百度很多教程,演示的环境是Nodejs14)
安装yarn
1 | npm install -g yarn |
安装vue-cli
1 | yarn global add @vue/cli |
获取项目
点击 WebUi (opens new window)下载项目压缩包
or
1 | git clone https://github.com/HibiKier/zhenxun_bot_webui.git |
如果比较慢的话可以尝试以下代码1
git clone https://gitclone.com/github.com/HibiKier/zhenxun_bot_webui.git
安装依赖
1 | yarn |
开始运行
1 | yarn run serve |
配置账号密码
在您的真寻bot存放目录/configs/config.yaml
文件中配置项设置账号密码
1 | web-ui: |
必须要设置账号密码,否则无法登陆!
本文章是对原项目文档的补充和说明,有很多部分是转载的原文档,并非纯原创
原文档地址:https://hibikier.github.io/zhenxun_bot/docs/installation_doc/