下载 url 文件时出错

Error downloading url file

当我尝试从 link 下载文件时出现此错误,无论我尝试、查找和执行什么操作,我都会出现此错误 我正在使用

    urllib.error.HTTPError: HTTP Error 403: Forbidden

我的代码是

 elif message.content.startswith('``'):
    countn = (count+1)
    print(countn)
    print('ADD')
    meme = (message.content)
    memen = meme.replace("``", "")
    print(memen)
    print('Converted')
    urllib.request.urlretrieve(memen, meme)
    await client.send_message (message.channel, "Added!")

403: FORBIDDEN 表示服务器拒绝您访问资源,这可能是因为您未能提供足够的身份验证,或者因为它阻止了默认的 python 用户代理 (Python.urllib/3.X)。

urlretrieve 实际上是一个遗留接口,因为它是从 Python 2 移植的。您应该考虑改用 urlopen

无论如何,一种解决方案是向您的请求添加(欺骗性的)用户代理,这不能使用 urlretrieve 来完成...

headers = {"User-Agent": "Mozilla/5.0"}
request = urllib.request.Request(url, headers=headers)
resp = urllib.request.urlopen(request)
with open(filename, "w") as file:
    file.write(resp.read())

这不会解决需要登录的网站的问题,但会解决很多不需要登录的网站。