NoneBot2入門的一些小建議
(技術向專欄)
????????嘛,其實很早之前就想寫這樣一篇專欄了,但總感覺沒這種必要,因為各處的教程都挺完備的。不過最近也看到不少人問了這樣那樣的一些問題,所以這篇專欄就為一些想入門的萌新指路吧。
本專欄不包含任何教程內容,僅作為引導。
一、最基礎的入門教程(Nonebot安裝,部署,啟動等)
????????這個等級的教程適用于只單純的想搞一個bot加些插件玩玩或者使用成品bot的人(PS:大部分成品bot只要不是作者很懶,都有很詳細的部署教程(甚至一鍵部署腳本))。
????????雖然不是強求,但是非常建議在學習Nonebot前去學習Python,因為Nonebot的安裝等也涉及到了一些Python的內容,且后續(xù)要想將Nonebot玩的好的話Python的知識是必不可少的。不過Python怎么學這里就不說了,畢竟是一門很火的語言,教程多得是。可以去B站搜視頻或者去Python官方文檔、菜鳥、w3之類的地方去學。
????????想要快速上手,追求效率的話可以看Well404大大的視頻教程,我當時就是看他的視頻入門的

????????如果覺得自己有時間有耐心并且有一定Python基礎的話也可以直接去看官方文檔(咱一般是是用來當字典查東西的):https://v2.nonebot.dev/docs/start/installation
????????gocq官方文檔(通常用于查閱API等):https://docs.go-cqhttp.org/guide/#go-cqhttp
????????此外還有些教程可供查閱:????????
????????https://github.com/nonebot/nonebot2-tutorial(官方,較推薦)
????????https://github.com/Well2333/NoneBot2_NoobGuide(非官方,和上面的其實是一個人寫的)
????????https://github.com/NCBM/py-nonebot-gocqhttp-tutorial-next(群友的,內容較少)
????????https://zhangshier.vip/posts/42735/#Nonebot2-%E6%9C%BA%E5%99%A8%E4%BA%BA%E6%9C%AC%E5%9C%B0%E6%90%AD%E5%BB%BA%E5%8F%8A%E9%83%A8%E7%BD%B2%E6%9C%8D%E5%8A%A1%E5%99%A8
二、進階(插件編寫)
????????這個等級的教程適用于想自己寫插件來玩轉Nonebot的人
????????插件編寫教程的話目前并不是非常多,都講的很淺。
????????首先是官方文檔,里面的教程是最詳細的,但部分內容不是特別容易懂:https://v2.nonebot.dev/docs/tutorial/plugin/create-matcher
????????well404大大的:https://github.com/nonebot/nonebot2-tutorial
????????以及我自己的:https://github.com/MRSlouzk/Nonebot-plugintutorials
??????關于編寫插件想說的事:如果看文檔之類的還不知道怎么搞的話,可以看NB2商店里插件的源碼,它們都是開源的??梢詫⑺麄兊拇a思路和形式當做一個很不錯的參考資料來編寫自己的代碼。
三、一些文檔
????????寫插件的時候要養(yǎng)成勤查文檔的好習慣,必須有動手能力
????????Nonebot2官方文檔=>用于查詢基礎的使用、插件編寫格式、一些API
????????gocq文檔=>用于學習gocq的使用方法、查詢qq的各類API調用形式
????????Onebot V11、V12文檔=>用于查詢Onebot的各類API、事件、消息類型、通信方式等:https://github.com/botuniverse/onebot-11
????????Nonebot商店=>有大量的優(yōu)質插件可以直接使用,以及可以作為參考:https://v2.nonebot.dev/store
四、怎么提問
????????提問前請先確保你已經查閱了各大文檔并且自己去嘗試解決過問題(推薦一下群友的nonediag,是一個Nonebot的問題診斷工具,github直接搜),不要一點雞毛蒜皮的,自己改點東西就能搞定的小問題就來問,一些小問題問多了誰都嫌煩。
????????還有一點是:對應板塊的問題請盡量去對應的地方去問,比如不要在gocq的地方問nonebot的問題,因為這倆壓根不是一個東西。
????????提問的藝術:https://github.com/ryanhanwu/How-To-Ask-Questions-The-Smart-Way
????????(以下排序優(yōu)先度遞減)
????????提問渠道1:NB2官群以及gocq官群(群號就不放了,大家自己去找),各個bot對應的群等等(咱建的群也可以(笑),群號在我的教程倉庫里)。此渠道提問解決速度通常較快。
??????? 提問渠道2:Nonebot2倉庫的discussion(相當于論壇):https://github.com/nonebot/discussions/discussions/?或者gocq的discussion:https://github.com/Mrs4s/go-cqhttp/discussions。缺點是回復可能會比較慢
????????提問渠道3:Nonebot2的QQ頻道。優(yōu)先級低是因為QQ頻道還在內測,不一定所有人都有。
????????提問渠道4:nonebot2倉庫的issues(極不建議):https://github.com/nonebot/nonebot2/issues。特別提醒:issues板塊是nb2的源代碼技術性問題討論區(qū)(比如源代碼里有什么bug之類的或者一些優(yōu)化建議),不要問一些很基本的問題。
????????最后想說的一些話:學習一門技術的時候一定要有耐心,其次是動手能力。沒有前一個你永遠只能學到皮毛,沒有后一個你永遠只是一個理論家。