下载图片但urllib.error.HTTPError

时间:2018-12-16 03:05:00

标签: python urllib

我正在尝试使用Python下载图像,但出现错误“ HTTP错误403:禁止访问”。我不知道该怎么办才能解决问题。这是我的代码:

import urllib.request as req
imgurl ="http://www.example.com/image.jpg"
req.urlretrieve(imgurl, r"C:\Users\home\Desktop\images\image_name.jpg")

1 个答案:

答案 0 :(得分:1)

看来urllib的默认用户代理是罪魁祸首。如果将其更改为传统浏览器之一,则可以使用:

>>> opener = req.build_opener()
>>> opener.addheaders = [('User-Agent', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.110 Safari/537.36')]
>>> req.install_opener(opener)
>>> req.urlretrieve(imgurl, r"img.jpg")
('img.jpg', <http.client.HTTPMessage object at 0x7f75aaf05a90>)