Как взять изображение, которое прикрепил пользователь и скачать его?
хочу реализовать такую вещь, типо пользователь прикрепляет файл, а бот делает с ним что-то. Можете помочь? Просто я реально не понимаю, как это можно реализовать.
@commands.command(aliases=['brawl'])
async def бравл(self, ctx):
if len(ctx.message.attachments) > 0:
attachment = ctx.message.attachments[0]
else:
return
if attachment.filename.endswith(".jpg") or attachment.filename.endswith(".jpeg") or attachment.filename.endswith(".png") or attachment.filename.endswith(".webp") or attachment.filename.endswith(".gif"):
attachment.save('download.png')
##
im = Image.open('download.png')
font = ImageFont.truetype('roboto-regular.ttf', size=14)
draw_text = ImageDraw.Draw(im)
draw_text.text(
(102, 80),
text='бравл)',
font=font,
fill='#000000')
im.save('final_version.png')
##
await ctx.send(f'{ctx.author} ну, держи) ', file=discord.File('final_version.png'))
##
await s(0.1)
##
os.remove('download.png')
os.remove('final_version.png')
А так-же ошибка:
Traceback (most recent call last):
File "/opt/virtualenvs/python3/lib/python3.8/site-packages/discord/ext/commands/bot.py", line 939, in invoke
await ctx.command.invoke(ctx)
File "/opt/virtualenvs/python3/lib/python3.8/site-packages/discord/ext/commands/core.py", line 863, in invoke
await injected(*ctx.args, **ctx.kwargs)
File "/opt/virtualenvs/python3/lib/python3.8/site-packages/discord/ext/commands/core.py", line 94, in wrapped
raise CommandInvokeError(exc) from exc
discord.ext.commands.errors.CommandInvokeError: Command raised an exception: AttributeError: 'Attachment' object has no attribute 'image'