“403 Forbidden”使用python urlib包下载图像

时间:2016-08-20 15:32:24

标签: python web-crawler

我是urllib包的新手。 我尝试下载网站“http://www.girl-atlas.com/album/576545de58e039318beb37f6”中的所有图片 问题是:当我复制图像的网址并将网址传递给浏览器时,我会收到错误“403 Forbidden”。但是,当我右键单击浏览器中的图像,并选择在新窗口中打开图像时,这次,我将在新窗口中获取图像。 问题是:urlib如何模拟第二种方式?

1 个答案:

答案 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()