我是urllib包的新手。 我尝试下载网站“http://www.girl-atlas.com/album/576545de58e039318beb37f6”中的所有图片 问题是:当我复制图像的网址并将网址传递给浏览器时,我会收到错误“403 Forbidden”。但是,当我右键单击浏览器中的图像,并选择在新窗口中打开图像时,这次,我将在新窗口中获取图像。 问题是:urlib如何模拟第二种方式?
答案 0 :(得分:1)
禁止使用浏览器之外的网址。为了确保这一点,浏览器始终发送一个引用来自映射的站点。如果浏览器是用Python编写的,那么它将如下所示:
import urllib.request
opener = urllib.request.URLopener()
opener.addheader('Referer', 'http://www.girl-atlas.com/album/576545de58e039318beb37f6')
image = opener.open('http://girlatlas.b0.upaiyun.com/41/20121222/234720feaa1fc912ba4e.jpg!lrg')
data = image.read()
image.close()