Python Discord机器人无法启动:缺少intents参数问题求助
解决Discord机器人TypeError: Client.init()缺少'intents'参数问题
这个错误是因为discord.py从v2.0版本开始,要求必须显式指定网关意图(intents),不再支持无参数初始化discord.Client()。你之前尝试的intentions是拼写错误,正确参数名是intents,以下是具体解决步骤:
方法1:启用默认意图(推荐)
修改代码,创建默认意图对象并传递给Client,如果需要读取消息内容,还需手动开启message_content意图:
import discord # 创建默认意图实例 intents = discord.Intents.default() # 开启消息内容读取权限(v2.0+需手动开启) intents.message_content = True token = "your_token_here" # 传递intents参数初始化Client client = discord.Client(intents=intents) @client.event async def on_ready(): print(f"已登录为 {client.user}") client.run(token)
额外配置(必须)
登录Discord开发者后台,找到你的机器人:
- 进入
Bot页面 - 在
Privileged Gateway Intents区域,开启Message Content Intent开关
方法2:自定义特定意图
如果只需要部分功能,可以手动指定所需的意图:
import discord # 创建空意图实例,按需开启所需权限 intents = discord.Intents.none() intents.guilds = True # 允许获取服务器信息 intents.message_content = True # 允许读取消息内容 # 可根据需求添加其他意图,比如intents.members = True(需开发者后台开启对应权限) token = "your_token_here" client = discord.Client(intents=intents) @client.event async def on_ready(): print(f"已登录为 {client.user}") client.run(token)
补充检查
- 查看discord.py版本:执行
pip show discord,确保版本为v2.0及以上,若版本过低,执行pip install --upgrade discord.py升级 - 注意参数拼写:必须是
intents,不要写成intentions
内容的提问来源于stack exchange,提问作者Lava
相关产品推荐
相关产品推荐

