您现在的位置是:首页 >其他 >【个人笔记】go-cqhttp+pycqBot配置网站首页其他

【个人笔记】go-cqhttp+pycqBot配置

Love绘梨衣的Mr.lu 2024-06-17 10:29:37
简介go-cqhttp

开始文档:https://docs.go-cqhttp.org/guide/quick_start.html#%E5%9F%BA%E7%A1%80%E6%95%99%E7%A8%8B
1.下载go-cqhttp:
https://github.com/Mrs4s/go-cqhttp/releases
在终端输入arch,得到自己的设备内核是x86_64,所以下载的是go-cqhttp_linux_amd64.tar.gz

自己建个文件夹存上述压缩包,在上述文件所在目录下在终端执行:
tar -xzvf go-cqhttp_linux_amd64.tar.gz
得到三个文件,go-cqhttp/LICENSE/README.md

在终端执行:
./go-cqhttp

通信方式选择0(http)
会生成config.yml文件

(参照https://github.com/Mrs4s/go-cqhttp/blob/master/docs/config.md
打开yaml文件配置以下内容:

uin: # QQ账号
password: '' # 密码为空时使用扫码登录

# 连接服务列表
servers:
  # HTTP 通信设置
  - http:
      # 服务端监听地址
      # 如需指定监听ipv4, 可使用 `address: tcp4://0.0.0.0:5700` (ipv6同理)
      address: 0.0.0.0:5700
      # 反向HTTP超时时间, 单位秒
      # 最小值为5,小于5将会忽略本项设置
      timeout: 5
      middlewares:
        <<: *default # 引用默认中间件
      # 反向HTTP POST地址列表
      post:
      #- url: '' # 地址
      #  secret: ''           # 密钥
      #- url: 127.0.0.1:5701 # 地址
      #  secret: ''          # 密钥

报错:当前协议不支持二维码登录, 请配置账号密码登录.
解决方法:目录会生成device.json文件,进去把将"protocol":6 改成 “protocol”:2,就可以拿到二维码手机扫码登陆了

pycqBot安装:终端执行pip install pycqBot
运行如果报错ImportError: cannot import name ‘cqHttpApi’ from ‘pycqBot.cqApi’
因为更新了这个变了,按最新的readme使用

我把github上的代码下载下来了,在源码那里新建的测试代码,我的目录结构:(虽然不知道会不会和是否能成功运行有关)

(base) zyp@pop-os:~/下载/pytorch/other/mqqbot$ ls

环境myqqbot.txt data download logs session.token
config.yml device.json go-cqhttp pycqBot test.py
cqLogs docs LICENSE README.md

以下是我的测试代码

from pycqBot import cqHttpApi, cqLog
import logging
from pycqBot.data.message import Group_Message, Private_Message, Message


# 先在一个终端启动go-cqhttp:  ./go-cqhttp -faststart   注意yaml文件要配置ws!!!
# 再开一个终端运行text.py 
# 启用日志 默认日志等级 DEBUG
cqLog(logging.DEBUG)

cqapi = cqHttpApi()  # 报错get unexpected...msg_id啥的。改pycqBot/data/message.py第96行有问题,把return那里的reply函数的定义中的参数名改一下就好

bot = cqapi.create_bot()
bot.start(start_go_cqhttp=False)

# 成功启动可以使用 指令标识符+help 使用内置指令 help
# 给你的机器人qq发#help它会回复你的
风语者!平时喜欢研究各种技术,目前在从事后端开发工作,热爱生活、热爱工作。