1.部署webhook rancher部署
1.1. QQ群爬虫的原理是QQ框架mirai安装插件,插件hook消息推送到webhook API
1.2. 5003端口起flask webserver 接收插件hook的消息,并且推送到kafka
hook的json数据key具体含义参见
2.部署QQ群采集框架 mirai(新版) rancher部署
机器环境的配置与老版本相同
2.1.下载封装后的mirai程序并且运行
下载地址
https://gitee.com/LXY1226/MiraiOK
[图片上传失败...(image-d9e3cc-1597806847479)]
2.2.运行后在miraiOK_linux_amd64的同级目录下会产生plugins文件夹
2.3.将 cqhttp-mirai
生成的 jar包文件
(事件上报插件)放入 plugins
文件夹中
jar包下载地址
https://github.com/yyuueexxiinngg/cqhttp-mirai/pulse
[图片上传失败...(image-5a3e80-1597806847479)]
2.4.编辑 plugins/CQHTTPMirai/setting.yml
配置文件, 将以下给出配置复制并修改
# Debug日志输出选项
debug: false
# 要进行配置的QQ号 (Mirai支持多帐号登录, 故需要对每个帐号进行单独设置)
'1234567890':
# HTTP 相关配置
http:
# 可选,事件及数据上报URL, 默认为空, 即不上报
postUrl: ""
# 可选,上报消息格式,string 为字符串格式,array 为数组格式, 默认为string
postMessageFormat: string
# 可选,上报数据签名密钥, 默认为空
secret: ""
# 可选,反向客户端服务
ws_reverse:
# 可选,是否启用反向客户端,默认不启用
- enable: true
# 上报消息格式,string 为字符串格式,array 为数组格式
postMessageFormat: string
# 反向Websocket主机
reverseHost: 127.0.0.1
# 反向Websocket端口
reversePort: 8080
# 反向Websocket路径
reversePath: /ws
# 反向Websocket Api路径 尚未实现
# reverseApiPath: /ws/
# 反向Websocket Event路径 尚未实现
# reverseEventPath: /ws/
# 反向 WebSocket 客户端断线重连间隔,单位毫秒
reconnectInterval: 3000
- enable: true # 这里是第二个连接, 相当于CQHTTP分身版
postMessageFormat: string
reverseHost: 127.0.0.1
reversePort: 9222
reversePath: /ws
reconnectInterval: 3000
'0987654321': # 这里是第二个QQ Bot的配置
ws_reverse:
- enable: true
postMessageFormat: string
reverseHost:
reversePort:
reversePath: /ws
reconnectInterval: 3000
2.5.编辑 miraiOK_linux_amd64
同级目录下的 config.txt
配置文件(目的是实现自动登录)
# DEBUG
# NOUPDATE
# 在----------下面可以添加需要在每次启动时输入得指令
# 请注意,指令部分中#并不起效,miraiOK会原样输入到console
例如:
login 123456789 TestMiraiOK
say 655057127 MiraiOK_published!
----------
login 20785749 8081318
2.6.重启miraiOK_linux_amd64客户端
2.7.如果运行正常则观察事件上报API是否能够正常接收数据,ok则ok。
2.8.在以上步骤的基础上,接入到爬虫的项目框架中,再次包装,实现 rancher
部署 docker容器
运行
2.9.QQ账号在新的设备上登录需要验证,然而这个在rancher中无法完成,当接入新的QQ号的时候需要在容器中对该QQ号进行验证。
1.这其中需要注意的是代码中device.json这个文档,确保程序确实使用了这个文档,该文档是虚拟化的设备ID。
2.QQ号对改device.json已经验证过,理论上后面不会再次跳验证,所以需要保持device.json不变
3.具体操作上:进入服务器→进入容器(docker run -itd 镜像id /bin/bash →docker attach 上一条命令生成的ID)→ 容器内运行QQ群爬虫→完成验证→退出
网友评论