почему не работает получение аватара юзера discord.py, pillow?

написал команду которая берет аватар юзера и фотошопит его на картинку не работает получение аватара

скрипт:

@bot.command(pass_context = True)
#@commands.cooldown(1, 120, commands.BucketType.user)
async def avatar(ctx, member: discord.Member = None):
    #await ctx.message.delete(delay = 0)
    if member == None:
        member = ctx.author
    os.chdir("./images")
    #получение аватара
    avatar = member.avatar_url_as(size = 128)
    avt = BytesIO(await avatar.read())
    ima = Image.open(avt)
    img = ima.resize((500, 500))
    #обрезка в круг
    bigsize = (img.size[0] * 3, img.size[1] * 3)
    mask = Image.new('L', bigsize, 0)
    draw = ImageDraw.Draw(mask) 
    draw.ellipse((0, 0) + bigsize, fill = 255)
    mask = mask.resize(img.size, Image.ANTIALIAS)
    img.putalpha(mask)
    output = ImageOps.fit(img, mask.size, centering = (0.5, 0.5))
    output.putalpha(mask)
    output.save('output.png')
    #соеденение
    background = Image.open('avatar.jpg')
    background = background.resize((1280, 1280))
    background.paste(img, (92, 156), img)
    background.save('overlap.png')
    #отправка результата в чат
    await ctx.send(file = discord.File("overlap.png"))
    os.remove("output.png"), os.remove("overlap.png"), os.chdir("..")

Ответы (1 шт):

Автор решения: Bohdan
from io import BytesIO
import requests
from PIL import Image
...
def load_image(url: str):
    _bytes = BytesIO(requests.get(url).content)
    image = Image.open(_bytes).convert("RGBA")
    
    return image

avatar = member.avatar_url_as(size = 128)

avatar = load_image(avatar)
...

Source

→ Ссылка