DBot(基于青龙+GOCQ+Nonebot2)——5.24更新

维护不易,觉得有帮助,可以在文章结尾请我吃颗糖哦♥️

前提说明

因为每次抓好包修改青龙的config.sh文件时,需要找到对应的变量,然后找到最后的位置进行添加保存,这样实在太麻烦了,虽然对于CK少的来说,这都不是说,谁叫我太懒呢,我就写了一个自动修改青龙config.sh文件的机器人,代码开源,python环境。

因为每次抓好包修改青龙的config.sh文件时,需要找到对应的变量,然后找到最后的位置进行添加保存,这样实在太麻烦了,虽然对于CK少的来说,这都不是说,谁叫我太懒呢,我就写了一个自动修改青龙config.sh文件的机器人,代码开源,python环境。代码原创,自己想的,如果以下教程有问题跟我说。

部分文件已加密,有心思的可以自己去解密

注意

如果出现数据丢失,概不负责。

记得自己保存一下数据,特别是config.sh文件。


搭建教程

#升级pip
pip3 install --upgrade pip
#安装Nonebot2的支持库
pip3 install nb-cli
#查看是否安装成功
nb driver list
#安装依赖
pip3 install pymysql

#安装协议(go-cqhttp)
#nb adapter install <adapter-name>
nb adapter install nonebot-adapter-onebot
#直接输入,进行安装qq_jdbot
nb
#选择协议为onebot v11

如果你装的是懒人包,下面配置可以不用管。


#bot.py文件设置
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import nonebot
from nonebot.adapters.onebot.v11 import Adapter as ONEBOT_V11Adapter
nonebot.init(apscheduler_autostart=True)
app = nonebot.get_asgi()
driver = nonebot.get_driver()
driver.register_adapter(ONEBOT_V11Adapter)
nonebot.load_from_toml("pyproject.toml")
if __name__ == "__main__":
    nonebot.logger.warning("Always use `nb run` to start the bot instead of manually running!")
    nonebot.run(app="__mp_main__:app")

如果你装的是懒人包,上面配置可以不用管。


GOCQ的安装教程


########上传服务器后进行运行
#运行一次进行生成配置,然后修改配置,再运行
./go-cqhttp [-d]
#[-d]后台运行
例如:
./go-cqhttp -d

##如果要杀死这个这个进程
输入
ps -ajx|grep go-cqhttp

显示ID

kill -9 [ID]

这样显示已经在后台运行了:

DBot(基于青龙+GOCQ+Nonebot2)——5.24更新


################GOCQ的配置文件,自己参考一下
# go-cqhttp 默认配置文件
account: # 账号相关
  uin: 123456789 # QQ账号
  password: '' # 密码为空时使用扫码登录
  encrypt: false  # 是否开启密码加密
  status: 0      # 在线状态 请参考 https://docs.go-cqhttp.org/guide/config.html#在线状态
  relogin: # 重连设置
    delay: 3   # 首次重连延迟, 单位秒
    interval: 3   # 重连间隔
    max-times: 0  # 最大重连次数, 0为无限制
  # 是否使用服务器下发的新地址进行重连
  # 注意, 此设置可能导致在海外服务器上连接情况更差
  use-sso-address: true
  # 是否允许发送临时会话消息
  allow-temp-session: false
heartbeat:
  # 心跳频率, 单位秒
  # -1 为关闭心跳
  interval: 5
message:
  # 上报数据类型
  # 可选: string,array
  post-format: string
  # 是否忽略无效的CQ码, 如果为假将原样发送
  ignore-invalid-cqcode: false
  # 是否强制分片发送消息
  # 分片发送将会带来更快的速度
  # 但是兼容性会有些问题
  force-fragment: false
  # 是否将url分片发送
  fix-url: false
  # 下载图片等请求网络代理
  proxy-rewrite: ''
  # 是否上报自身消息
  report-self-message: false
  # 移除服务端的Reply附带的At
  remove-reply-at: false
  # 为Reply附加更多信息
  extra-reply-data: false
  # 跳过 Mime 扫描, 忽略错误数据
  skip-mime-scan: false
output:
  # 日志等级 trace,debug,info,warn,error
  log-level: warn
  # 日志时效 单位天. 超过这个时间之前的日志将会被自动删除. 设置为 0 表示永久保留.
  log-aging: 15
  # 是否在每次启动时强制创建全新的文件储存日志. 为 false 的情况下将会在上次启动时创建的日志文件续写
  log-force-new: true
  # 是否启用日志颜色
  log-colorful: true
  # 是否启用 DEBUG
  debug: false # 开启调试模式
# 默认中间件锚点
default-middlewares: &default
  # 访问密钥, 强烈推荐在公网的服务器设置
  access-token: ''
  # 事件过滤器文件目录
  filter: ''
  # API限速设置
  # 该设置为全局生效
  # 原 cqhttp 虽然启用了 rate_limit 后缀, 但是基本没插件适配
  # 目前该限速设置为令牌桶算法, 请参考:
  # https://baike.baidu.com/item/%E4%BB%A4%E7%89%8C%E6%A1%B6%E7%AE%97%E6%B3%95/6597000?fr=aladdin
  rate-limit:
    enabled: false # 是否启用限速
    frequency: 1  # 令牌回复频率, 单位秒
    bucket: 1     # 令牌桶大小
database: # 数据库相关设置
  leveldb:
    # 是否启用内置leveldb数据库
    # 启用将会增加10-20MB的内存占用和一定的磁盘空间
    # 关闭将无法使用 撤回 回复 get_msg 等上下文相关功能
    enable: true
  # 媒体文件缓存, 删除此项则使用缓存文件(旧版行为)
  cache:
    image: data/image.db
    video: data/video.db
# 连接服务列表
servers:
  # 反向WS设置
  - ws-reverse:
      # 反向WS Universal 地址
      # 注意 设置了此项地址后下面两项将会被忽略
      universal: ws://127.0.0.1:2333/onebot/v11/ws
      # 反向WS API 地址
      api: ws://your_websocket_api.server
      # 反向WS Event 地址
      event: ws://your_websocket_event.server
      # 重连间隔 单位毫秒
      reconnect-interval: 3000
      middlewares:
        <<: *default # 引用默认中间件

修改universal的端口,懒人包默认端口为2333,防火墙打开2333


如果你装的是懒人包,下面配置可以不用管

##############开始创建项目
nb
#选择create项目
#按照自己的需求创建,最后生成一个文件夹
#结构如下
📦 AweSome-Bot                 #假设这个文件夹名
├── 📂 awesome_bot         # 或是 src
│   └── 📜 plugins                                      #下载后的源码放进这个里面,下载后的源码放进这个里面,下载后的源码放进这个里面
├── 📜 .env                # 可选的,需要配置
├── 📜 .env.dev            # 可选的,需要配置
├── 📜 .env.prod           # 可选的,需要配置,具体配置看gocq的配置文件进行对应
├── 📜 .gitignore
├── 📜 bot.py                    
├── 📜 docker-compose.yml
├── 📜 Dockerfile
├── 📜 pyproject.toml
└── 📜 README.md

如果你装的是懒人包,上面配置可以不用管


懒人包说明

#结构如下
📦 DBot                 #假设这个文件夹名
├── 📂 jdbot         # 或是 src
│   └── 📜 plugins                                      #下载后的源码放进这个里面,r然后修改config.py的配置文件
├── 📜 .env                # 可选的,需要配置,可以修改端口
├── 📜 .env.dev            # 可选的,需要配置,可以修改端口
├── 📜 .env.prod           # 可选的,需要配置,具体配置看gocq的配置文件进行对应
├── 📜 .gitignore
├── 📜 bot.py                    
├── 📜 docker-compose.yml
├── 📜 Dockerfile
├── 📜 pyproject.toml
└── 📜 README.md

修改源码中的config.py文件。

最后返回bot.py的文件夹下,输入 nb run 运行。


后台运行

宝塔用户安装:

DBot(基于青龙+GOCQ+Nonebot2)——5.24更新

DBot(基于青龙+GOCQ+Nonebot2)——5.24更新

运行目录选择bot.py的文件夹下,启动命令填nb run,点击确定。

Docker搭建教程

为什么不放在文章开头呢,因为这里只有docker命令,剩下的配置还得看上面的内容

提示:dbot以及在docker里面,只需要配置gocq,扫个码登上去,然后去配置数据库地址和数据库里面的数据就好了,是不是又简单了很多,开始教程

#第一步,安装docker,怎么安装呢,百度吧

#第二步,拉取镜像,开放      2333  3306端口 
docker run -dit \
-v dbot:/app/dbot \
-p 2333:80 \
-e ENVIRONMENT=prod \
-e APP_MODULE=bot:app \
-e MAX_WORKERS=1 \
--name dbot \
--hostname dbot \
--privileged=true \
--restart always \
staronedream/dbot_docker:1.4

#这里推荐宝塔的docker管理

#第三步,运行后使用这个命令查看dbot路径
docker volume inspect dbot

路径看下面

DBot(基于青龙+GOCQ+Nonebot2)——5.24更新

这里就是源码存放的地方,进入上面的路径,并下载最新版源码(压缩包里面没有任何中文字,除了修复包外的压缩包)
然后上传到这个文件价里面并覆盖

在里面修改config.py文件,修改数据库地址后启动docker

DBot(基于青龙+GOCQ+Nonebot2)——5.24更新

然后上传数据库,不会?百度去,保姆都救不了你
然后上传数据库,不会?百度去,保姆都救不了你
然后上传数据库,不会?百度去,保姆都救不了你
修改ql表,url为http://青龙IP/,最后要 /
修改ql表,url为http://青龙IP/,最后要 /
修改ql表,url为http://青龙IP/,最后要 /

数据库说明

#结构如下
📦 DBot                         # 你的数据库
├── 📜 user                 # 用户数据,字段admin的 1 代表管理员,0 代表用户
├── 📜 cookie              # 所有cookie存放出,可手动更改绑定qq,只需要发送指令,便可以查询名下账号
├── 📜 export             # config.sh文件中export xxx的xxx存放处,可以自定义类型,日志地址,关键字上传等
├── 📜 words              # 自定义命令,可以自定义回复等,默认所有接口都有,自行参考
├── 📜 ql                   # 青龙容器存放出,url中的连接后面必须带    /   

export表说明

DBot(基于青龙+GOCQ+Nonebot2)——5.24更新

圈起来的部分可以自定义修改,过期关键字很多暂时不支持使用,及改了也没用,但是以后会有的

字段说明:
export:就是export xxx=“”的xxx
log:脚本生成日志的文件夹名
up_key:用@隔开

注:不仅只有这个六个,你也可以添加其它的,比如说以下例子:
7  58同城   wbtcCookie  True   58tc    NULL(等于不填)   @   [email protected]=@&UN=(多个关键字用@隔开) 提交成功       50(最大CK数量,到顶不会接受CK)


words表说明

DBot(基于青龙+GOCQ+Nonebot2)——5.24更新

上面圈起来的,类型为 【命令】的,圈起来的部分不能改,剩下的可以自定义了,也可也增加其它的问答,比如说禁言等等

DBot(基于青龙+GOCQ+Nonebot2)——5.24更新 定时暂时还没写,以后会有的

问题详解

问:输入”查询快手“没反应

答:去看看数据据的config表的设置有没有出错


问:DBot同步 有什么用

答:config.sh文件里面的快手极速版ck上传至MySQL数据库,不自动绑定QQ


问:菜单太丑怎么办

答:config.py文件自己修改


问:dbot后台出现错误怎么办

答:如果该错误没有影响机器人的正常使用,那就不用管,日常抽风。如果机器人都无法使用了,第一先去百度翻译一下错误是什么意思,或者直接搜索错误,自己研究解决问题,如果还是没办法解决,来找我吧,我来瞅瞅


问:我删除了该账号,为什么还能查询

答:源码采用的是读取日志的形式进行查询的,虽然删除了账户,但是日志还没有更新,可以先运行一遍脚本,等日志更新后,再查询,你就发现刚刚删除账户的信息消失了。快手快手删除账号推荐使用命令:删除快手


问:错删了怎么办

答:无解,自己找回,概不负责


问:假设我有2个账户,我删除了账号1,再次查询还有账号1,为什么

答:原账号1已被删除,只是后面的数据往前移动了,替代了这个文章,但是原ck不一样


问:查询快手过期账号,为什么我删除了过期账号,还是显示账号过期呢

答:日志没更新,原ck往前移了,具体看上面的问答


问:为什么我增加ck机器人没反应

答:数据库日志和青龙config.sh的地址配置错误


问:有没有交流群

答: 1023015785


问:为什么我一开始能启动gocq,可是第二次无法启动

答:gocq正在运行,要杀死这个进程才能再次运行


问:显示添加成功,可是运行的时候为什么没有这个ck

答:可能配置错了青龙,如果添加成功,那就不是源码问题,而是配置问题


问:指令怎么用

答:都在数据库里面,不会用不要紧,一个一个去试


问:直接发送ck问什么没有反应

答:你先看看你的青龙有没有这个脚本和变量,没有的话那还不赶紧把这个开关关掉


问:其它查询没反应

答:他她它,你觉得是哪个它?


代收集。。。

更新内容

2022-5-24
    【更新操作】已搭建和未搭建:上传新数据库,如果出现alter错误,正常,请无视,数据库下载:https://wwm.lanzout.com/b08ta2s8b
    【请更新最新docker镜像】直接docker pull 镜像名,删除原来的的容器,并再次创建容器
    1. 修复dbot不回复的问题
    2. 优化代码
    3. 增加面板端导入导出功能
    4. 增加自动更新数据库
    5. 增加开机自动检测数据是否缺失,缺少数据库就上传本地数据库
    6. 增加自定义面板首页的设置,标题,按钮,跳转链接等
    7. 增加面板后台手动同步青龙的所有CK
    8. 更新后台首页



2022-4-19:
    1. 修复面板无法增加修改用户信息
    2. 修复cookie页面无法使用
    3. 优化数据库配置,只需要设置一个配置即可
    4. 增加面板自定义背景
    5. 现无需安装宝塔等插件进行安装DBot
    6. 此平台自带DBot,无需再次安装,如果检测到DBot无法运行,请重启此容器
    7. 增加面板接口 ip/cookie/
    8. 支持在线提交CK。智能识别用户的CK并提交到相应位置,与DBot机器人相识
    9. 增加自定义提交地方,可以选择配置文件,或者变量
    10. 修复DBot无法查询自选股等信息
    11. 修复选择配置地址无用的bug
    12. 修改数据库表
    13. 修复无数据无法启动
    14. 增加接口命令:状态

2022-4-14:
    更新docker镜像和命令,更新数据库整合包

2022-4-12:
    更新docker教程,拉取docker镜像和饥饿容器,只需要配置gocq以及数据库即可
2022-4-10:
    2.3.2-2.3.3:
    修复各种bug
2022-4-9:
    2.3.1
    1.增加所有类型的状态显示
    2.增加cookie数据库,用于存放所有cookie数据,所有ck都可以绑定QQ
    3.修复快捷提交ck无法提交到数据库
    4.修复相同关键字提交的ck只能提交一个
    5.增加同步功能,可以同
    6.修改青龙登陆方法
    更新教程:删除数据库 ks 表
2022-4-8:
    2.3.0
    1.修改整体框架
    2.更换数据库表,删除config和word表
    3.增加数据库export和words表
    4.增加自定义识别关键字进行上传
    5.增加自定义回复
    6.增加自定义关键字禁言
    7.增加自定义关键字撤回
    8.增加默认添加分隔符
    9.增加菜单的自定义回复
    10.增加类型的数量上限,当ck达到上限时,并不会继续增加
    11.增加自定义禁言时间
    12.暂时删除设置配置命令,现有配置都在MySQL数据库手动配置
    13.增加自定义上传回复接口,所有接口默认数据库都有,自行参考
    14.增加查询美团命令
    15.增加查询饿了么命令
    16.修复自选股多行空显示
    更新教程:删除数据库中config和word表,上传整个数据库

2022-4-6:
    2.2.0
    1.修复大bug,重写各种模块
    2.日志路径不用填了,直接填 ql 数据库就好,把密钥全部填写(暂时只支持一个容器)
    3.增加【状态】命令
    更新教程:删除qinglong_config.py文件和ks.py文件,将数据库更新包上传,日志类型后面不用加【反斜线】了,删掉即可
    日志地址不需要填写,没用了,以后我把不用的数据都删掉,新版还不知道有什么bug,有bug跟我说吧


2022-4-5:
    2.1.8:
    1.修复快手ck直接提交无法回复问题
    2.修复已知BUG
    3.增加酷狗大字提交ck
    4.增加管理员指令,自己摸索
    5.增加指令为增加管理员用户:增加管理员 qq
    6.也可以删除管理员:删除管理员 wzq_qlskey
    更新教程:覆盖源码,上传数据库更新包

2022-4-4:
    2.1.7:
    1.修复换行CK无法提交
    2.优化代码
    3.修改增加账户指令:增加账号 分割号 类型 CK
    4.增加查询自选股功能
    5.增加自选股快速提交功能,检测openid&wzq_qlskey&wzq_qluin字段将自动提交ck,默认@隔开
    6.优化数据库

2022-4-3:
    2.1.6:
    1.修复设置配置失败的问题
    2.修复换号增加账号无法添加ck
    3.删除提交延迟
    4.修复增加账号换行问题
    5.优化代码
    更新教程:更换main.py文件

    2.1.5:
    1.修复重复同步BUG
    2.增加普通快手的查询(与极速版CK一模一样才能查询,记得在数据库里面把false改成True)
    3.增加提交ck随机延迟在半分钟以内(以后自定义)
    4.优化代码
    更新教程:上传up数据库包,修改config表中得普通快手为True,覆盖源码,修改数据库地址
    
2022-4-2晚:
    2.1.4:
    1.修复已知BUG
    
    2.1.3:
    1.修复已知BUG,优化代码
    2.增加快手极速版CK同步至数据库
    3.数据库设置ck绑定QQ,直接输入 查询快手 查询信息
    4.增加发送ck自动上传数据库并绑定QQ
    5.增加删除快手账号功能【删除快手 qq 快手账户名】直接从数据库以及config.sh文件中删除
    更新教程:直接覆盖所有源码,上传up的数据库包
    pip3 install pymysql
    安装依赖
2022-4-2:
    2.1.1:
    1.修复设置config.sh文件问题
    2.设置配置修改为MySQL数据库,自行在config.py修改IP端口,以后就不用怕更新后重新设置配置了
    3.增加数据库自定义命令
    4.增加菜单功能,回复自定义,命令:查询菜单
    5.增加设置数据库配置,命令:设置配置 config 内容(暂支持修改config)
    更新说明:创建一个MySQL数据库,上传懒人包里面的数据库,修改config.py文件
2022-3-30:
    2.0.1更新内容:(上传ks.py和main.py即可)
    1.修改快手提交关键字
    2.增加快手查询功能:去ks.py进行修改配置文件

DBot(基于青龙+GOCQ+Nonebot2)——5.24更新

DBot(基于青龙+GOCQ+Nonebot2)——5.24更新

2.0.1更新功能

DBot(基于青龙+GOCQ+Nonebot2)——5.24更新

2.1.4更新功能

DBot(基于青龙+GOCQ+Nonebot2)——5.24更新

-> 加入科技玩家交流群组:点击加入 注意:
1.文中二维码和链接可能带有邀请性质,请各位玩家自行抉择。
2.请勿通过链接填写qq号与密码、银行卡号与密码等个人隐私信息。
3.禁止纯拉人头,拉app注册等信息,发现必小黑屋。
4.同一种信息仅发一次,多发会被删除。
5.文章中源码或APP等,无法保证其绝对安全,需自行辨别。
6.文章关联方不想展示也可以微信站长“socutesheep”删除。
本文由 @ODrea 发布。如若转载,请注明出处: 科技玩家 » DBot(基于青龙+GOCQ+Nonebot2)——5.24更新

给TA买糖
共{{data.count}}人
人已买糖
教程玩家投稿

东东ToolAPP破解全解密源码

2022-4-2 21:58:20

教程玩家投稿

青龙面板对接F3322或花生壳免费域名

2022-4-4 21:58:58

442 条回复 A文章作者 M管理员
贴心提醒
请认真对待作者付出,勿发表无意义言论,触发过滤规则的评论将无法提交,包含敏感词的评论会自动变成待审核状态哦。
  1. flipped0

    666啊

  2. hansey1589

    感谢分享~~~~6666

  3. hansey1589

    666啊

  4. 好家伙

    😎😎😎牛

  5. 幻念

    先看看,不明白的地方再问

  6. slimei

    辛苦了,学习一下

  7. 启际

    学习一下 用得着啊

  8. 圆圆34400

    这样你的分享,辛苦了😊

  9. 瓜gua

    感谢分享~~~~6666

  10. 瓜gua

    666啊

  11. seatom

    又学习到了,写的非常好😁

  12. 七年

    七年前来顶贴!

  13. 84896150

    很详细的教程

  14. JaniQuiz

    可以的,我自己搭建下试试

  15. 84896150

    学习学习,

个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索