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

Discord机器人启动报错(TypeError: Token为NoneType)求助

Discord机器人Token加载失败问题排查

问题描述

开发Discord机器人时,已配置intents:

intents = discord.Intents.default()
intents.message_content = True

client = discord.Client(intents=intents)

尝试启动机器人时触发如下错误:

Traceback (most recent call last):
  File "main.py", line 21, in <module>
    client.run(os.getenv('TOKEN'))
  File "/home/runner/WhopperBot/venv/lib/python3.10/site-packages/discord/client.py", line 860, in run
    asyncio.run(runner())
  File "/nix/store/hd4cc9rh83j291r5539hkf6qd8lgiikb-python3-3.10.8/lib/python3.10/asyncio/runners.py", line 44, in run
    return loop.run_until_complete(main)
  File "/nix/store/hd4cc9rh83j291r5539hkf6qd8lgiikb-python3-3.10.8/lib/python3.10/asyncio/base_events.py", line 649, in run_until_complete
    return future.result()
  File "/home/runner/WhopperBot/venv/lib/python3.10/site-packages/discord/client.py", line 849, in runner
    await self.start(token, reconnect=reconnect)
  File "/home/runner/WhopperBot/venv/lib/python3.10/site-packages/discord/client.py", line 777, in start
    await self.login(token)
  File "/home/runner/WhopperBot/venv/lib/python3.10/site-packages/discord/client.py", line 609, in login
    raise TypeError(f'expected token to be a str, received {token.__class__.__name__} instead')
TypeError: expected token to be a str, received NoneType instead

已重置机器人Token,但错误仍持续出现。

解决方法

  • 检查环境变量配置:
    错误核心是os.getenv('TOKEN')返回None,说明系统中未配置名为TOKEN的环境变量:
    1. 在线运行平台(如Replit):找到项目的「Secrets」或「环境变量」选项,添加键为TOKEN、值为机器人Token的条目。
    2. 本地运行:创建.env文件(需先安装python-dotenv包),写入TOKEN=你的机器人Token,并在代码开头添加:
      from dotenv import load_dotenv
      load_dotenv()
      
  • 验证环境变量名:确保代码中os.getenv的参数与你设置的环境变量名称完全一致(大小写敏感),比如不要写成token或TOKEN_1。
  • 临时测试(不推荐生产环境):若仅用于测试,可直接将Token以字符串形式传入client.run,但注意不要将代码上传至公开仓库,避免Token泄露:
    client.run('你的机器人Token')
    
  • 确认Token完整性:重置Token后,复制时不要包含多余空格或换行符,确保内容完整无遗漏。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.14 12:02:42