微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

HTTP 错误 403:当我尝试使用我的不和谐机器人获取新成员的个人资料照片时,在 urllib 上被禁止

如何解决HTTP 错误 403:当我尝试使用我的不和谐机器人获取新成员的个人资料照片时,在 urllib 上被禁止

我正在编写一个 discord.py discord BOT。现在我正在编写“on_member_join”,并且我正在尝试获取新的会员个人资料图片以制作自定义的欢迎图片。这是问题。当我启动程序并且有成员加入服务器时,请求被正确发送,但我收到 HTTP Error 403: Forbidden 错误

我的代码

import discord
from PIL import Image,ImageDraw,ImageFont
import urllib.request

@client.event
async def on_member_join(member):

    url = f"{member.avatar_url}"

    name = "profile.png"

    urllib.request.urlretrieve(url,name)

请记住,我需要下载图像,因为我必须使用“枕头库”对其进行自定义

解决方法

discord.Member.avatar_url(我链接到 User 等价物,因为文档无论如何都重定向到那里)返回一个您可以调用 await read() 的资产。这将为您提供头像的字节表示,您可以直接将其读入 Pillow Image,如下所示:

from io import BytesIO
from PIL import Image

avatar_bytes = await member.avatar_url.read()
im = Image.open(BytesIO(avatar_bytes))

如果需要将原始头像保存到磁盘,可以使用save()代替read()

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。