You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python新手编写的Discord bot无法上线,进程退出码为0且无代码报错

Discord Bot 运行后直接退出无报错的解决方案

Process exit with exit code 0是程序正常执行完毕的退出状态,出现该问题的核心原因是你没有调用Bot的启动方法来启动阻塞式事件循环,程序执行完所有顶层逻辑后就直接结束了,没有保持运行来监听Discord服务的事件。

你可以按以下顺序逐一排查修复:

  • 首先检查代码末尾是否漏写了启动逻辑,针对discord.py框架,对应写法如下:
    如果你用discord.Client实例化Bot:
    # 替换为你自己的Bot Token,注意不要泄露给其他人
    client.run("你申请的Bot Token")
    
    如果你用commands.Bot实例化Bot:
    bot.run("你申请的Bot Token")
    
  • 确认上述启动代码没有被错误缩进在其他函数、条件判断块内部,如果你要放在主入口判断块内,正确写法如下:
    if __name__ == "__main__":
        bot.run("你申请的Bot Token")
    
  • 如果你已经写了启动代码仍直接退出,检查你是否在run方法执行前就写了close()、exit()等提前终止程序的逻辑,删除对应代码即可。
  • 补充注意项:discord.py v2.0及以上版本需要显式配置Intents,否则会启动失败,正确的实例化示例如下:
    import discord
    from discord.ext import commands
    
    # 配置意图,根据你的Bot需要的权限开启对应项
    intents = discord.Intents.default()
    # 如果你的Bot需要读取消息内容,必须开启message_content权限,同时也要在Discord开发者后台打开对应开关
    intents.message_content = True
    
    bot = commands.Bot(command_prefix="!", intents=intents)
    

内容的提问来源于stack exchange,提问作者Shir0

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 03:15:07