从0开始搭建一个色图Bot
下面的操作全都是在的Ubuntu20.04_amd64上演示的
必要条件
OPQBot本体
Python环境 (版本要>=3.8)
非Windows的机子 (Windows版本的OPQBot不能发图)
一个能上外网的代理,或者机子直接就能上外网
一个QQ小号(
准备工作
先把要用的软件包安装上
我这里已经安装过了,一般这步都不会有问题的(
1 |
|
1 |
|
然后下载OPQBot
挑选合适版本的OPQBot,右键对应版本的蓝字,然后复制链接
1 |
|
例如
1
wget https://github.com/opq-osc/OPQ/releases/download/v6.7.5-Bate1224/OPQBot_6.7.5-Bate1224_linux_amd64.tar.gz
解压下载的压缩包
1 |
|
例如
1
tar -zxvf OPQBot_6.7.5-Bate1224_linux_amd64.tar.gz
然后把压缩包删了
1 |
|
最后把解压出来的文件夹改个名(后续方便点)
1 |
|
clone色图姬
1 |
|
到这里所有要用到的文件都已经下载好了
登录OPQBot
获取token
在启动OPQBot前需要一个Token
到这个页面登录授权后就可以拿到 –> Gitter Developer Program
拿到token后要填到OPQBot的CoreConf.conf文件里
这里要安装一个文本编辑器 (一般都是自带的)
1
apt update && apt install nano
然后进入OPQBot的文件夹
1 |
|
编辑CoreConf.conf文件
1 |
|
在下图中的位置填入上面从Gitter Developer Program复制的token
保存方法: ctrl + x,然后输入Y,回车
启动OPQBot
这里使用screen来保持进程
安装screen
1
apt update && apt install screen
1 |
|
例如
1
screen -R OPQBot
回车后会短暂的出现下面的页面,然后就进入了一个新的终端
然后输入
1 |
|
1 |
|
出现 Everything is ok! 后才算启动完成,然后再进行扫码登陆
扫码登陆
然后确保防火墙里打开了OPQBot要用的端口,默认是8888,端口可以在CoreConf.conf里修改
浏览器输入
IP就是你运行OPQBot的机子的IP
PORT如果没修改过的话就是8888 (可以去CoreConf.conf里查看)
1 |
|
例如
1
http://192.168.1.123:8888/v1/Login/GetQRcode
然后用手机扫码登录 (第一次登录会将token绑定QQ,后续如果要换QQ的话需要换绑)
回到终端查看是否登录成功, 如果成功了就按 ctrl+a+d 来暂时离开当前会话
如果后续要查看OPQBot的状态,或者要关闭重启OPQBot,可以再次通过下面的命令进入
1
screen -R 你之前起的名字
如果忘记名字了可以通过 screen -ls来查看有哪些会话
可以到这个网站学习下使用screen Linux screen命令 | 菜鸟教程
启动SetuBot
到这步,OPQBot应该已经登录上,并且通过screen挂在后台了
安装依赖模块
先把色图姬要用到的Python库全装上
1 |
|
1 |
|
填写botoy.json
setu.refresh_token
最麻烦的应该就是这个了, 需要获取Pixiv的refresh_token
这里使用docker来获取这个token
安装docker
1 |
|
获取refresh_token
1 |
|
例如
账号为114514
密码为1919810
1
docker run --rm -it eggplanter/gppt lh -u 114514 -p 1919810
不出意外的话输出应该和我一样(
需要的是refresh_token (绿色线划出来的部分)
保存配置
然后把它填到 OPQ-SetuBot/botoy.json 里
1 |
|
保存方法同上
ctrl + x,然后输入Y,回车
searchPicture.apiKey
这个文件需要获取saucenao的apikey,只需要注册个账号就可以拿到
在这里注册登录
然后访问这个
绿色线部分就是apikey
保存配置
同上
1 |
|
保存方法和之前一样
其他配置项
字段名 | 说明 |
---|---|
host | OPQ的IP,本机运行就 http://127.0.0.1 |
port | OPQ的端口,没修改过就是8888 |
superAdmin | 你的qq |
proxies_http | http代理 例子: {“all://“: “http://127.0.0.1:8030"} |
proxies_socks | socks代理 例子: “socks5://username:password@127.0.0.1:8888” |
运行色图姬插件
色图姬插件也需要保持后台运行
这里和运行OPQBot一样都使用screen
开启一个新的会话
1 |
|
例如
1
screen -R setu
进入目录
1 |
|
运行插件
1 |
|
这个时候如果机器人没有风控的话就可以正常使用了 (风控:色图插件日志正常,但是bot没有反应)
最后还要生成一下setu插件的配置文件 生成setu配置文件
然后ctrl + a +d 就可以暂时离开当前会话并断开ssh了