让我的 Discord.py 机器人发送动画表情符号

时间:2021-01-18 15:25:24

标签: animation discord discord.py emoji discord.py-rewrite

我已尝试将此作为我的代码。

@client.command()
async def party(ctx):
    party = client.get_emoji(786138532069900350)
    await ctx.send('{}'.format(party))

但它回复为None
这是一个动画默认不和谐表情符号 Emoji 那么我做错了什么?

3 个答案:

答案 0 :(得分:1)

或者如果这些方法都不起作用,只需像这样发送:

await ctx.send("https://cdn.discordapp.com/emojis/836234327016210482.gif?v=1")

答案 1 :(得分:0)

通过一些研究,我发现https://github.com/Rapptz/discord.py/issues/390

基本上它包括使用自定义表情符号

要使用自定义表情符号,请使用表情符号名称,然后是 id 可以是 从其链接 id 中提取的中间 id。

比如这个表情的id是:

原始链接:https://cdn.discordapp.com/emojis/3489241209391.png?v=1 表情符号:3489241209391

在下面显示的示例中,它会在发送消息时显示为表情符号

<:emoji_name:emoji_id>

example: <:myemoji:3489241209391>

与动画表情符号相同,只是在前面附加一个“a”

答案 2 :(得分:0)

我注意到您的 get_emoji 变量名称是 party,与命令(或函数)名称相同,这就是它返回 None 的原因。请将变量名称更改为函数名称以外的名称。 示例:

@client.command()
async def party(ctx):
    partyemoji = client.get_emoji(786138532069900350) # problem was here
    await ctx.send(partyemoji) # instead of formatting string simply use variable name.

P.S:如果仍然返回 None,请检查您的表情符号 ID 是否有效。