QQ 賬號用戶信息查詢設置
nonebot-plugin-qqdetail 教學(NoneBot2 + NapCat / OneBot v11)
這篇教學會帶你從 0 建好 NoneBot2 專案、安裝並啟用nonebot-plugin-qqdetail,並用 NapCat(OneBot v11)把 QQ 的事件用 WebSocket 轉給 NoneBot(同機、正向 WS)。
前置安裝(建議環境)
- Python:建議 Python 3.10 / 3.11
- Git
- VS Code
1) 建立 NoneBot 專案(最省事:用 nb-cli)
在你要放專案的資料夾打開 PowerShell(或 VS Code 內建 Terminal),依序輸入:
python -m venv .venv
.\.venv\Scripts\activate
python -m pip install -U pip
pip install nb-cli接著用 nb-cli 建立專案(這一步會生成專案結構與基本設定):
nb create照提示選:
- Driver:通常選 FastAPI
- Adapter:用 QQ 常見轉發方式通常選 OneBot v11
- Project name:隨便取
建立完成後,進入專案資料夾(如果你新開視窗也記得重新啟動 venv):
cd 你的專案資料夾
.\.venv\Scripts\activate補充:先 nb create 再在專案內建立 .venv 也可以;重點是你知道 .venv 建在哪裡。
2) 安裝插件 nonebot-plugin-qqdetail
在專案根目錄(有 pyproject.toml 的那層)執行:
pip install nonebot-plugin-qqdetail3) 啟用插件
打開專案內的 .env(沒有就自己建立),加上這一行:
NONEBOT_PLUGINS=["nonebot_plugin_qqdetail"]提醒:這裡填的是 Python 模組名;本插件使用 nonebot_plugin_qqdetail。
4) 配好 NapCat(OneBot v11 / WebSocket:同機正向連線)
重要觀念:NoneBot 本身不直接登入 QQ。
你需要 NapCat(OneBot 實作)登入 QQ,並把事件透過 OneBot v11 協議轉發給 NoneBot。
你目前的 WS 位址是:
ws://127.0.0.1:8080/onebot/v11/ws4-1. NapCat 端設定(WebSocket Server)
在 NapCat 的 OneBot v11 設定中,請確認(或新增)WebSocket 入口,至少要符合:
- 協議:OneBot v11
- 傳輸:WebSocket
- 監聽:
127.0.0.1/8080 - 路徑(Path):
/onebot/v11/ws
安全提醒:127.0.0.1 只允許本機連線;不要把 WS 直接暴露到公網。
若 NapCat 支援 Access Token,建議設定一個。
4-2. NoneBot 端設定(WS Client 連 NapCat)
打開 NoneBot 專案根目錄的 .env(或 .env.prod),加入(或確認)下列內容:
DRIVER=~fastapi
HOST=127.0.0.1
PORT=8081
ONEBOT_WS_URLS=["ws://127.0.0.1:8080/onebot/v11/ws"]重點:PORT=8081 是 NoneBot 自己用的埠,請不要跟 NapCat 的 8080 衝突。ONEBOT_WS_URLS 才是 NoneBot 去連 NapCat 的地址。
如果 NapCat 設了 Access Token:
ONEBOT_ACCESS_TOKEN=你在NapCat設定的token補充:若你專案的 OneBot v11 adapter 對環境變數命名有差異,請以實際文件為準,再對照調整。
4-3. 啟動順序
- 先啟動 NapCat(確認 WS 已開始監聽)
- 再啟動 NoneBot(下一節)
5) 啟動
在專案根目錄執行:
nb run啟動後你應該能看到:
- NoneBot log 顯示已連上 OneBot v11 WebSocket(或類似訊息)
- NapCat 端顯示有 WebSocket Client 連入 / 連線已建立
常見問題排查
Q1:一直連不上 / 一直重連
- 確認 NapCat 的 WS 位址是否真的是
ws://127.0.0.1:8080/onebot/v11/ws - 確認你填的是
ws://(不是http://) - 確認 NoneBot 的
PORT沒有設成 8080(避免埠衝突) - 若 NapCat 設了 token:確認
ONEBOT_ACCESS_TOKEN完全一致(含大小寫)
Q2:NapCat 正常,但 NoneBot 沒收到事件
- 確認插件已啟用,且 OneBot v11 adapter 正常載入
- 確認你是在專案根目錄執行
nb run,且.env有被讀到 - 確認 NapCat 顯示 WS 連線已建立

然後配置 NapCatQQ
https://github.com/NapNeko/NapCatQQ/releases/download/v4.17.55/NapCat.Shell.Windows.OneKey.zip

雙擊運行其中的 KillQQ.bat 以確保 結束了QQ進程

啟動 launcher.bat
安裝完成 雙擊目錄下 launcher.bat 即可啟動。
如果是win10 則使用 launcher-win10.bat


開啟 web UI
找到控制台其中的輸出內容
01-19 18:46:47 [[32minfo[39m] [NapCat] [WebUi] WebUi User Panel Url: http://127.0.0.1:6099/webui?token=b1a689a1e8cb
可以看到 webUI 有面板位址:
http://127.0.0.1:6099/webui?token=b1a689a1e8cb
配置web UI
在機器人登入成功後,如上圖文,展開了完整的webUI內容
接著我們配置對應的網路服務



查詢目標 QQ 使用者的詳細資料。支援 QQ 號、@用戶,或不帶參數查詢自己。
/detail <QQ號 或 @用戶 或 無>
<QQ號>: 輸入 5-11 位元的有效 QQ 號碼@使用者: 在群組聊天中直接 @ 指定的群組成員- 無參數: 直接傳送指令查詢發送者本人的資訊
- 資料來源: 基於 OneBot 協定獲取用戶信息,準確性取決於連接的 OneBot 實現
- 權限控制: 支援多種權限控制,如管理員專用、使用者黑名單等
⚠️ 重要提醒
- 學習交流用途:本插件僅供學習和交流使用,請勿用於任何非法目的
- 隱私權保護:查詢使用者資訊時請尊重他人隱私,確保使用符合相關法規
- 免責聲明:使用者需對自身使用行為負責,開發者不對使用本插件產生的任何後果承擔責任
#QQ 註冊日期 #QQ 註冊時間 #QQ生日 #qq 注册时间
參考資料:
NapCatQQ
- https://napneko.github.io/
- https://forum.itzdrli.cc/d/12-ru-he-shi-yong-napcat-dui-jie-adapter-onebot-shi-yong-jiao-cheng/11
- https://github.com/NapNeko/NapCatQQ/releases
- https://github.com/006lp/nonebot-plugin-qqdetail
