所以我一直在用
urllib.request.urlretrieve(URL, FILENAME)
下载互联网图片。它工作得很好,但在某些图像上失败了。它失败的那些似乎是更大的图像 - 例如。 http://i.imgur.com/DEKdmba.jpg .它可以很好地下载它们,但是当我尝试打开这些文件时,照片查看器给我错误消息“Windows 照片查看器无法打开这张图片,因为文件似乎已损坏或太大”。
它无法下载这些内容的原因可能是什么,我该如何解决?
编辑:进一步查看后,我认为问题不在于大图像 - 它设法下载了更大的图像。它似乎只是一些随机的,每当我再次运行脚本时它都无法下载。现在我更糊涂了
过去,我曾使用此代码从互联网上进行复制。我在处理大文件时没有遇到任何问题。
def download(url):
file_name = raw_input("Name: ")
u = urllib2.urlopen(url)
f = open(file_name, 'wb')
meta = u.info()
file_size = int(meta.getheaders("Content-Length")[0])
print "Downloading: %s Bytes: %s" % (file_name, file_size)
file_size_dl = 0
block_size = 8192
while True:
buffer = u.read(block_size)
if not buffer:
break
我是一名优秀的程序员,十分优秀!