nonebot2.0.0a16-qq机器人框架安装及搭建教程
目錄
安裝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: trueheartbeat:# 心跳頻率, 單位秒# -1 為關閉心跳interval: 5message:# 上報數據類型# 可選: string,arraypost-format: string# 是否忽略無效的CQ碼, 如果為假將原樣發送ignore-invalid-cqcode: false# 是否強制分片發送消息# 分片發送將會帶來更快的速度# 但是兼容性會有些問題force-fragment: false# 是否將url分片發送fix-url: false# 下載圖片等請求網絡代理proxy-rewrite: ''# 是否上報自身消息report-self-message: false# 移除服務端的Reply附帶的Atremove-reply-at: false# 為Reply附加更多信息extra-reply-data: false# 跳過 Mime 掃描, 忽略錯誤數據skip-mime-scan: falseoutput:# 日志等級 trace,debug,info,warn,errorlog-level: warn# 日志時效 單位天. 超過這個時間之前的日志將會被自動刪除. 設置為 0 表示永久保留.log-aging: 15# 是否在每次啟動時強制創建全新的文件儲存日志. 為 false 的情況下將會在上次啟動時創建的日志文件續寫log-force-new: true# 是否啟用 DEBUGdebug: 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=aladdinrate-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: 2000middlewares:<<: *default # 引用默認中間件# 反向HTTP POST地址列表post:#- url: '' # 地址# secret: '' # 密鑰#- url: 127.0.0.1:5701 # 地址# secret: '' # 密鑰# 正向WS設置- ws:# 正向WS服務器監聽地址host: 0.0.0.0# 正向WS服務器監聽端口port: 6700middlewares:<<: *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: 3000middlewares:<<: *default # 引用默認中間件# pprof 性能分析服務器, 一般情況下不需要啟用.# 如果遇到性能問題請上傳報告給開發者處理# 注意: pprof服務不支持中間件、不支持鑒權. 請不要開放到公網- pprof:# pprof服務器監聽地址host: 127.0.0.1# pprof服務器監聽端口port: 7070# LambdaServer 配置- lambda:type: scf # scf: 騰訊云函數 aws: aws Lambdamiddlewares:<<: *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
總結
以上是生活随笔為你收集整理的nonebot2.0.0a16-qq机器人框架安装及搭建教程的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Warez 组织的64K 3D动画下载
- 下一篇: fckeditor for php 下载