尝试通过python中的urllib2下载jpg文件时出错

时间:2014-02-20 09:08:59

标签: python download urllib2

我想制作一个程序从一些网址下载jpg文件(日文漫画),我在网上看到了一些例子,但它们在我的情况下不起作用:

import urllib2
jpgfile = urllib2.urlopen("http://mangas2013.centraldemangas.com.br/attack_on_titan/attack_on_titan001-01.jpg")
output = open('attack_on_titan001-01.jpg','wb')
output.write(jpgfile.read())
output.close()

有了这个网址,我得到了一个28kb的jpg文件文件(原版是120kb),当我尝试打开时,图片没有出现在Windows图片浏览器上...这很奇怪,因为我可以下载并查看jpg文件来自使用相同代码的其他网站...

我是python的新手,所以尽量给我最简单的答案。

1 个答案:

答案 0 :(得分:0)

您可以尝试使用urllib.urlretrieve()代替urllib2.urlopen

import urllib
jpg_filename, headers = urllib.urlretrieve('http://mangas2013.centraldemangas.com.br/attack_on_titan/attack_on_titan001-01.jpg', 'attack_on_titan001-01.jpg')

编辑:我重新阅读了你的问题,我不确定为什么该网站特别无效。这可能是因为您需要在访问该文件之前进行身份验证。检查你得到的答案:

import urllib2
jpgfile = urllib2.urlopen("http://mangas2013.centraldemangas.com.br/attack_on_titan/attack_on_titan001-01.jpg")
print jpgfile.getcode()
print jpgfile.read()

由于缺乏身份验证,可能会重定向。