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

Discord.py开发中Embed嵌入GIF无法正常显示问题求解

问题原因
  • 你传入set_image的链接是Giphy的网页详情页地址,不是GIF的直接资源链接。Discord Embed的图片字段仅支持指向图片/GIF文件的直链,网页链接无法被识别渲染。
  • 你的参数校验逻辑存在错误:你给member参数设置了discord.Member类型注解但没设置默认值,当用户调用指令没有指定目标成员时,discord.py会直接抛出参数缺失错误,不会进入你写的if member is None判断分支。同时你最后的return member == ctx.author属于无用逻辑,不会产生任何作用。
修复方案
  1. 替换为GIF直链
    在Giphy的GIF展示页面右键点击GIF素材,选择「复制图片地址」即可获取到GIF的直链,用这个直链替换掉原来的网页链接。
  2. 修复参数校验逻辑
    给member参数添加默认值None,删除无用的return语句,可额外补充成员互动的提示文本提升使用体验。
修复后参考代码
@client.command()
async def hug(ctx, member: discord.Member = None):
    embed = discord.Embed(title="🤗 拥抱")
    # 替换为你自己获取到的GIF直链即可
    embed.set_image(url="此处替换为GIF直链")
    # 没有指定成员时触发自抱逻辑
    if member is None:
        await ctx.send("你要抱自己吗?🥺")
        await ctx.send(embed=embed)
        return
    # 正常调用时发送互动提示
    await ctx.send(f"{ctx.author.mention} 紧紧抱住了 {member.mention}!", embed=embed)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.11 13:18:02