5 回答

TA貢獻1810條經驗 獲得超4個贊
如果你添加我寫在那里的代碼(只有所有者才能使用)將關閉已經運行的機器人(在discord服務器中寫/shutdown或你的前綴是什么)。
但是,使用此代碼保存機器人后,可能需要重新啟動電腦。
@client.command()
@commands.is_owner()
async def shutdown(ctx):
await ctx.bot.logout()
因此,每次如果要編輯命令,請編寫 /shutdown 并對其進行編輯,之后,您可以再次啟動它。
我希望這對你有用,我可以提供幫助。

TA貢獻1827條經驗 獲得超9個贊
結束運行機器人的整個腳本的一種方法是使用內置的 python 函數,兩者都執行相同的操作。exit()quit()
@bot.command()
@commands.is_owner()
async def shutdown(context):
exit()
通過放置你正在制作它,以便只有機器人的所有者才能使用此命令。要在不和諧服務器中調用此命令類型(將 替換為前綴)。@commands.is_owner()/shutdown/
它引發了一堆錯誤,但總體上結束了程序,因此最終它可能不是最有效的方法,但它可以完成工作。

TA貢獻1831條經驗 獲得超9個贊
此消息實際上并不 discord.py 特定,并且適用于無限期運行的每個腳本。
你正在運行機器人的多個實例。如果在 IDE 環境中運行它,那么在某個地方應該有一個停止按鈕。如果在控制臺中運行它,關閉控制臺窗口將關閉機器人。
編輯:如果你像標簽建議的那樣在sublime3中運行它,每次你想要關閉機器人時,請轉到“工具”,然后轉到“取消構建”(熱鍵:CTRL + Break)。運行機器人的另一個實例后,崇高地“解耦”當前腳本以支持新腳本,此方法不再起作用。然后,您必須手動瀏覽正在運行的進程(命令行或任務管理器)并搜索任何“Python”進程。
通常,我建議在命令行中運行腳本,因為您可以更好地控制它。

TA貢獻1784條經驗 獲得超8個贊
解決此問題的簡單方法是重新生成機器人令牌。這樣做將關閉所有活動腳本。對于任何不熟悉Discord API的人來說,如果您遇到過“拒絕訪問”的錯誤,那么此解決方案也應該對您有所幫助。
添加回答
舉報