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

Python 3.x下Discord Bot报错:缺少必填关键字参数'intents'

解决Discord Bot初始化时的intents缺失错误

问题原因

该错误源于discord.py v2.0及以上版本强制要求初始化Client类时必须显式指定intents参数,而原项目代码基于旧版本discord.py开发,未适配这一改动。

修复步骤

1. 修改代码添加intents配置

打开项目的main.py文件,按以下步骤修改:

  • 在文件开头导入discord模块(如果未导入):
    import discord
    
  • 在创建MyClient实例前,定义并配置intents:
    # 初始化默认intents
    intents = discord.Intents.default()
    # 若Bot需要读取消息内容(部分通知场景可能需要),开启该权限
    intents.message_content = True
    
  • 修改MyClient类的初始化方法,接收并传递intents参数:
    class MyClient(discord.Client):
        def __init__(self, channel_id, *, intents, **kwargs):
            self.channel_id = channel_id
            # 将intents传递给父类Client
            super().__init__(intents=intents, **kwargs)
    
  • 最后修改创建client的代码,传入intents:
    # 替换原来的client = MyClient(channel_id)
    client = MyClient(channel_id, intents=intents)
    

2. 开启Discord后台对应权限

登录Discord开发者平台,找到你的Bot应用:

  • 进入「Privileged Gateway Intents」板块
  • 开启「Message Content Intent」权限(若代码中开启了message_content则必须开启)

备选方案:降级discord.py版本

若不想修改代码,可安装旧版本discord.py(不推荐,旧版本无维护):

pip install discord.py==1.7.3

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.20 21:36:33