是否可以使用discord.py将自定义反应图像文件从计算机添加到邮件中?

2024-06-16 09:12:53 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试将两个自定义表情添加到我的机器人的消息中。要添加自定义表情符号,如果我没有弄错的话,我可能必须购买discord nitro/prime才能在其他服务器上使用它。有没有办法不用花钱就能使用我的自定义表情符号

我在想,是否有可能从我的计算机文件中读取一个图像,然后将其转换为我的机器人可以使用的自定义反应。到目前为止,我还没有代码,因为我真的不知道如何在Python/Discord.py中使用枕头和图像编辑


Tags: 文件代码图像服务器消息计算机机器人prime
2条回答

您可以使用create_custom_emoji()

用法:

server = discord.utils.get(client.guilds, id=123456789)  # your server's ID
with open("PATH TO YOUR IMAGE", "rb") as image:
    server.create_custom_emoji(name="EMOJI NAME", image=image)

这是文档中的页面:https://discordpy.readthedocs.io/en/latest/api.html?highlight=create_custom_emoji#discord.Guild.create_custom_emoji

解决方案

我基本上只需要得到一个表情符号的id,然后是它的名字。您可以通过复制所需反应的链接来获得id。只需右键单击它并复制链接。复制链接后,将其粘贴到浏览器中,您应该会看到您的表情符号弹出到浏览器中

例如,此链接https://cdn.discordapp.com/emojis/755076996945543208.png?v=1。我只需要复制这些数字,它们是755076996945543208

在获得id后,我们需要获得表情符号的名称。这很容易,我相信每个人都知道怎么做

在获得表情符号名称和id后,您所要做的就是这样

@client.command()
async def poll(ctx, *, message):
    msg = await ctx.send(f"**{message}**")
    await msg.add_reaction(emoji="name_of_emoji:emoji_id")

感谢所有参与并参与此问题的人,我感谢您的帮助:D

相关问题 更多 >