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

部署Discord-Telegram机器人遇报错:Client.__init__缺失intents参数求助

解决Discord Client初始化缺少intents参数的报错

这个报错是因为discord.py v2.0及以上版本强制要求初始化discord.Client()时传入intents参数,用来控制机器人能访问的Discord事件和数据权限,旧代码未适配这个变更导致报错。以下是详细解决步骤:

1. 在Discord开发者平台开启对应特权意图

  • 登录Discord开发者门户,找到你的机器人应用
  • 进入「Bot」页面,下拉找到「Privileged Gateway Intents」板块
  • 根据机器人功能开启需要的意图:
    • 若机器人需要读取消息内容,必须开启「Message Content Intent」
    • 若需要获取成员列表、在线状态等,开启「Server Members Intent」和「Presence Intent」

2. 修改bot.py代码适配intents

找到bot.py中初始化discord.Client()的代码段,替换为以下内容:

import discord

# 创建Intents对象,启用基础权限+消息内容权限(根据需求调整)
intents = discord.Intents.default()
intents.message_content = True  # 对应开发者平台开启的Message Content Intent

# 用配置好的intents初始化Client
bot = discord.Client(intents=intents)

如果你的机器人需要其他权限(比如成员管理),可以在Intents对象中添加对应属性,例如intents.members = True,注意要和开发者平台开启的特权意图保持一致。

3. 验证部署

修改代码后重新提交到GitHub触发部署,确保部署环境中的discord.py版本为v2.0及以上(若环境依赖版本过低,建议更新requirements.txt中的discord.py版本至最新稳定版)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.17 01:55:21