【问题标题】:how i add a img that a user sent in a discord.py embed我如何添加用户在 discord.py 嵌入中发送的图像
【发布时间】:2022-01-09 18:27:36
【问题描述】:

我正在提出建议不和谐机器人,我想知道是否可以添加用户在 embed 上发布的图像

类似

embed.set_image(url=image_url)

image_url 将是用户添加到消息中的图像。

suggestion_channel_id = 925568558241550393
color = 0x3498db

@bot.event
async def on_message(message):
    suggestionData = '{}'.format(message.content).replace('?sugestão','')
    if message.author == client.user:
        return

    if message.content.startswith('?sugestão'):
        embed=discord.Embed(title ='Nova sugestão!')
        embed.add_field(name='Vote Abaixo!', value=suggestionData, inline=True)
        channel=bot.get_channel(suggestion_channel_id)
        embed.color=color
        embed.set_footer(text='Sugestão por ' + message.author.name, icon_url=message.author.avatar_url)
        up_emoji = '\N{THUMBS UP SIGN}'
        down_emoji = '\N{THUMBS DOWN SIGN}'
        msg = await channel.send(embed=embed)
        await msg.add_reaction(up_emoji)
        await msg.add_reaction(down_emoji)
        await message.channel.send('Sua sugestão foi enviada!' + '** ' + message.author.name + ' ????' + ' **')


token = config("token")
bot.run(token)

【问题讨论】:

  • 有 2 种方法,您可以要求图像参数并让您的用户发布指向图像的链接,或者您可以让用户将图像附加到消息并通过 message.attachments 获取。
  • 好的,附件是我想要的,但我现在如何设置图像?因为embed.set_image(url= message.attachments) 是错误的
  • 查看下面@Ratery 的答案以获得解决方案,message.attachments 是一个列表,因此您想获得该列表中的第一张图片。

标签: python discord discord.py bots


【解决方案1】:

您可以使用message.attachments 获取邮件附件列表:

@bot.command()
async def send_image(ctx):
    embed = discord.Embed(title="Your attached image")
    if len(message.attachments):
        embed.set_image(url=ctx.message.attachments[0].url)
    await ctx.send(embed=embed)

【讨论】:

  • 不确定如何在此处应用它,我编辑了我的帖子,如果看起来很混乱,请看一下,抱歉
猜你喜欢
  • 2023-03-09
  • 2021-01-25
  • 2021-02-13
  • 2021-01-13
  • 2021-02-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-04-11
相关资源
最近更新 更多