nonebot2.0.0a16-qq机器人框架安装及搭建教程

7 篇文章 7 订阅
7 篇文章 2 订阅

目录

安装nonebot2

搭建框架 

go-cq安装配置

运行go-cqhttp.exe文件即可看见如下:

运行框架


Hello!大家好!我是PYmili 

一个路过的编程小伙,给我记住了!

相信大家都知道一个叫nonebot的库!   nonebot链接:点击我!轻一点!

那是以前的啦!都2021年了!大家都用nonebot2!

nonebot2链接:nonbet2点击我!《--------------------------可以参考其中的官方文档!

今天就教大家怎么去做一个框架!脚架!

也可以参考隔壁川川的链接:川川的教学!点击我!轻一点!


安装nonebot2

废话不多说,简单明了!不事多!

看图:

这里官方说了!要安装nonebot2的话就要卸载nonebot之前的版本!因为他们不兼容!而且python版本要等于或大等3.7如:3.8,3.9

命令为:

pip uninstall nonebot

可以去官网下载!链接:点我!

什么?!你不知道你安装的python版本?!(知道的可以跳过)

我教你!win+r 输入:cmd 然后输入以下代码:

python --version

安装相应版本和插件版本,我们需要下载2.0.0a16版本的nonebot。

下载安装setup_nonebot2.txt文件:https://www.kuko.icu/API/Message/setup_nonebot2.txt

下载后执行命令:

pip install -r setup_nonebot2.txt

即安装成功 


 

搭建框架 

接下来干什么当然是搭建了!欧耶! 

配置我们的框架下载作者已经配置好的文件:https://www.kuko.icu/API/Message/data.zip

解压后就有所有配置文件


 

go-cq安装配置

然后再下载cq

链接:我是下载地址!

官方教程链接:我是链接!

本次使用go-cqhttp为:1.0.0-beta8-fix2版本

下载好后就把它解压到你的文件夹中

Shift+鼠标右键在此处打开 Powershell 窗口(s),点击它 

输入.\g按Tab键一下就会这样

运行go-cqhttp.exe文件即可看见如下:

输入数字12345 

 更改其中的文件1,config.yml

更改如下:

# go-cqhttp 默认配置文件

account: # 账号相关
  uin:  # 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

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
  # 是否启用 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

# 连接服务列表
servers:
  # 添加方式,同一连接方式可添加多个,具体配置说明请查看文档
  #- http: # http 通信
  #- ws:   # 正向 Websocket
  #- ws-reverse: # 反向 Websocket
  #- pprof: #性能分析服务器
  # HTTP 通信设置
  - http:
      # 服务端监听地址
      host: 0.0.0.0
      # 服务端监听端口
      port: 5700
      # 反向HTTP超时时间, 单位秒
      # 最小值为5,小于5将会忽略本项设置
      timeout: 5
      # 长轮询拓展
      long-polling:
        # 是否开启
        enabled: false
        # 消息队列大小,0 表示不限制队列大小,谨慎使用
        max-queue-size: 2000
      middlewares:
        <<: *default # 引用默认中间件
      # 反向HTTP POST地址列表
      post:
      #- url: '' # 地址
      #  secret: ''           # 密钥
      #- url: 127.0.0.1:5701 # 地址
      #  secret: ''          # 密钥
  # 正向WS设置
  - ws:
      # 正向WS服务器监听地址
      host: 0.0.0.0
      # 正向WS服务器监听端口
      port: 6700
      middlewares:
        <<: *default # 引用默认中间件
  # 反向WS设置
  - ws-reverse:
      # 反向WS Universal 地址
      # 注意 设置了此项地址后下面两项将会被忽略
      universal: ws://127.0.0.1:8080/cqhttp/ws
      # 反向WS API 地址
      api: ws://your_websocket_api.server
      # 反向WS Event 地址
      event: ws://your_websocket_event.server
      # 重连间隔 单位毫秒
      reconnect-interval: 3000
      middlewares:
        <<: *default # 引用默认中间件
  # pprof 性能分析服务器, 一般情况下不需要启用.
  # 如果遇到性能问题请上传报告给开发者处理
  # 注意: pprof服务不支持中间件、不支持鉴权. 请不要开放到公网
  - pprof:
      # pprof服务器监听地址
      host: 127.0.0.1
      # pprof服务器监听端口
      port: 7070
  # LambdaServer 配置
  - lambda:
      type: scf # scf: 腾讯云函数 aws: aws Lambda
      middlewares:
        <<: *default # 引用默认中间件

这里不建议更改你的QQ或密码进去,会很容易被QQ风控,到时候扫码登录就行了

打开src文件夹也就是你的机器人插件文件夹

然后更改文件.env  中内容为

 

ENVIRONMENT=dev
CUSTOM_CONFIG=common config

.env.dev  为:

HOST=127.0.0.1
PORT=8080
DEBUG=true

注意这里有个  PORT=8080  是把端口设置为:8080,如果端口用不了或被使用了就可以改为相近的8766也可以

.env.pord  为:

HOST=127.0.0.1
PORT=8080
SECRET=
ACCESS_TOKEN=

文件夹中有一个bot.py文件打开它!(可不动)

改为:

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
 
import nonebot
from nonebot.adapters.cqhttp import Bot as CQHTTPBot
# Custom your logger
# 
# from nonebot.log import logger, default_format
# logger.add("error.log",
#            rotation="00:00",
#            diagnose=False,
#            level="ERROR",
#            format=default_format)
 
# You can pass some keyword args config to init function
nonebot.init()
 
nonebot.load_plugins("src/plugins")
 
app = nonebot.get_asgi()
 
driver = nonebot.get_driver()
 
driver.register_adapter("cqhttp", CQHTTPBot)
 
nonebot.load_builtin_plugins()
nonebot.load_plugins("src/plugins")
nonebot.init(apscheduler_autostart=True)
nonebot.init(apscheduler_config={
    "apscheduler.timezone": "Asia/Shanghai"
})
 
# nonebot.load_from_toml("pyproject.toml")
 
# Modify some config / config depends on loaded configs
# 
# config = driver.config
# do something...
 
if __name__ == "__main__":
    nonebot.logger.warning("Always use `nb run` to start the bot instead of manually running!")
    nonebot.run(app="__mp_main__:app")

运行框架

找到bot.py文件按F5运行,或双击

再到 go-cqhttp_windows_amd64文件夹键盘Shift+右键

在此处打开 Powershell 窗口(s),点击它 输入.\g按Tab键一下就会这样

由于我们没有填写密码,所以等一下会弹出二维码,用QQ扫描一下登录就行了 

回车键再运行bot.py文件 

要查看是否成功?

提示:在QQ对你输入的QQ号发送信息/echo hello 也就是打开手机QQ用另外一个QQ号,不是机器人的QQ号。发送信息 /echo hello 就可以了

示例

 

机器人回复了hello ,代表成功了!

手机QQ也是如此!

如果回复为hello即为成功!到此框架搭建成功!

喜欢就三联吧!

2021/9/24博主更新config.yml配置文件

我只是一个路过的编程小伙,给我记住了!

聊天交流群:706128290

  • 27
    点赞
  • 90
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 11
    评论
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Pymili

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值