一、查看conda版本
二、查看系統(tǒng)版本
uname -a
arch
getconf LONG_BIT
三、配置go-cqhttp
下載go-cqhttp
這里有不同版本的cqhttp,并且對(duì)每個(gè)版本都有介紹。但是大家可以看到有arm與adm
不同的版本,這兩個(gè)啥關(guān)系呢?
嚴(yán)格來(lái)說(shuō),AMD和ARM沒(méi)有任何關(guān)系
。AMD是桌面級(jí)處理器和桌面級(jí)GPU的生產(chǎn)廠商,而ARM是移動(dòng)級(jí)處理器的生產(chǎn)廠商。AMD是目前業(yè)內(nèi)唯一一個(gè)可以提供高性能CPU、高性能獨(dú)立顯卡GPU芯片、主板芯片組三大組件的半導(dǎo)體公司,AMD提出3A平臺(tái)的新標(biāo)志,在筆記本領(lǐng)域有“AMD VISION”標(biāo)志的就表示該電腦采用3A構(gòu)建方案(CPU、GPU、主板芯片組均由AMD制造提供)。ARM 主要涉及 IP 的設(shè)計(jì)和許可,而非生產(chǎn)和銷(xiāo)售實(shí)際的半導(dǎo)體芯片。ARM向合作伙伴網(wǎng)絡(luò)(包括世界領(lǐng)先的半導(dǎo)體公司和系統(tǒng)公司)授予 IP 許可證。這些合作伙伴可利用 ARM 的 IP 設(shè)計(jì)創(chuàng)造和生產(chǎn)片上系統(tǒng)設(shè)計(jì),但需要向 ARM 支付原始 IP 的許可費(fèi)用并為每塊生產(chǎn)的芯片或晶片交納版稅。
這里我在官網(wǎng)上下載了倆(一個(gè)用在linux上一個(gè)用在windows上)
1.請(qǐng)切換至同一網(wǎng)絡(luò)下掃碼
在云端服務(wù)器進(jìn)行上號(hào)的時(shí)候,會(huì)出現(xiàn)掃碼登錄,如果手機(jī)掃碼登錄之后出現(xiàn)這種情況有兩種快速解決方案(1.將收集ip切至云服務(wù)器ip所在地 2.利用windows系統(tǒng)生成的device.json和session.token覆蓋云端的這兩個(gè)文件,因?yàn)檫@兩個(gè)文件是QQ密鑰信息)然后就可以登錄成功了。
2.打包Docker鏡像
到此為止咱的linux系統(tǒng)上就可以跑起來(lái)一個(gè)cqhttp了,那么為啥咱要將其打包進(jìn)Docker鏡像中呢?眾所周知Docker隨著近幾年云原生的火爆也展露了頭角
我們將程序打包進(jìn)Docker容器內(nèi)更加便于維護(hù),更加便于遷移,當(dāng)然打包需要同學(xué)有一定的Docker基礎(chǔ),感興趣的小伙伴繼續(xù)往下看。
第一步:將上述文件整理好之后,做到在本級(jí)目錄能夠運(yùn)行g(shù)o-cqhttp可執(zhí)行文件,安裝配置好Docker,我這里是買(mǎi)的騰訊云的服務(wù)器,自帶了Docker,大家自己裝一個(gè),網(wǎng)上應(yīng)該有教程。
第二步:編寫(xiě)Dockerfile鏡像打包文件,這里的文件如下:
按步就班的做就好了,這里的意思就是將本級(jí)目錄下用到的文件拷貝到小主機(jī)alpine內(nèi)。
FROM alpine:latest
RUN mkdir "/app"
WORKDIR "/app"
COPY go-cqhttp /app/go-cqhttp
COPY device.json /app/device.json
COPY config.yml /app/config.yml
COPY session.token /app/session.token
COPY LICENSE /app/LICENSE
#ENTRYPOINT ["/user-srv"]
CMD ["/app/go-cqhttp"]
第三步:打包鏡像
我這里起的鏡像名字為cqhttps,如果最后結(jié)果像截圖中展示的那樣,就是打包成功了。
docker build -t cqhttps .
第四步:起一個(gè)Docker容器:
如圖可以看到成功將go-cqhttp運(yùn)行了起來(lái)。
docker run cqhttps
四、創(chuàng)建NoneBot環(huán)境
安裝腳手架
pip install nb-cli
nb
接下來(lái)的步驟就與windows上搭建Nonebot2環(huán)境沒(méi)太大差異了。
大工告成!成功創(chuàng)建項(xiàng)目后項(xiàng)目應(yīng)包含以下文件
進(jìn)入項(xiàng)目,創(chuàng)建一個(gè)插件
cd twoPyBot
from nonebot.adapters import Bot, Event
from nonebot.plugin import on_message
#自定義回復(fù)詞典
reply_dic = {
'您吃了嗎': '沒(méi)吃呢~'
,'早上好' : '早上好~'
,'晚安' : '做個(gè)好夢(mèng)'
,"你是誰(shuí)":"我叫小Q"
,"你的主人是誰(shuí)":"秘密不告訴你。"
,"你多大了":"秘密哦"
,"介紹一下自己吧":"我叫小Q"
}
#回復(fù)部分
# 檢測(cè)到用戶(hù)信息
reply = on_message(priority=100)
@reply.handle()
async def reply_handle(bot: Bot, event: Event):
# 獲取用戶(hù)發(fā)送的信息
user_msg = str(event.get_message()).strip()
# 在字典內(nèi)找鍵值對(duì),找不到的話(huà)就回復(fù)后面那句話(huà)。
reply_msg=reply_dic.get(user_msg,"")
# 符合條件回復(fù)
if reply_msg!="":
await reply.finish(reply_msg) #進(jìn)行回復(fù)并結(jié)束該事件
運(yùn)行項(xiàng)目
nb run
文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-417134.html
至此大工告成!文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-417134.html
到了這里,關(guān)于使用騰訊云服務(wù)器+Nonebot2+go-cqhttp搭建QQ聊天機(jī)器人【保姆級(jí)教程 2023最新版】的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!