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

Discord.py使用自定义表情报错,请求技术帮助

解决Discord.py发送自定义表情错误问题

先修正代码中的基础错误

你的代码里intents变量未初始化,Discord.py v2.x版本要求必须显式设置intents,否则会引发权限相关错误。修正后的基础代码:

import discord
from discord.ext import commands

# 初始化并配置必要的intents
intents = discord.Intents.default()
intents.message_content = True  # 必须开启,否则机器人无法处理消息内容

client = commands.Bot(intents=intents, command_prefix="$")

@client.event
async def on_message(msg):
    if msg.author == client.user:
        return
    await msg.channel.send("<:doory_fruit:1062084428228206657>")

client.run("你的机器人Token")

针对两种错误的具体解决方案

错误1:仅输入表情名称时出错

Discord的自定义表情必须使用<:表情名称:表情ID>的完整格式才能被识别,单独输入表情名称会被当作普通文本,无法解析为表情,必须使用完整格式发送。

错误2:使用名称+ID格式时出错

可能的原因及解决办法:

  • 机器人未加入表情所在服务器:自定义表情仅对所在服务器内的成员/机器人可见,确保你的机器人已经加入了该表情所属的服务器。
  • 表情ID或名称不匹配:右键Discord中的表情,选择「复制链接」,链接末尾的数字即为正确ID,确认你使用的ID和名称与表情完全一致。
  • 机器人权限不足:确保机器人在目标频道拥有「发送消息」权限;如果表情来自其他服务器,还需要机器人拥有「使用外部表情」的权限。
  • intents配置不全:已在基础代码中开启message_content,这是机器人处理消息和发送内容的必要权限。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.05 02:50:33