图片链接下载适用于Python 3中,而不是在Python 2.7版

图片链接下载适用于Python 3中,而不是在Python 2.7版

问题描述:

我有以下图片链接: “http://vignette2.wikia.nocookie.net/matrix/images/d/df/Thematrixincode99.jpg/revision/latest?cb=20140425045724图片链接下载适用于Python 3中,而不是在Python 2.7版

中号无法使用它下列任何一种方法来下载Python的2.7.13:

# METHOD 1 
url = 'http://vignette2.wikia.nocookie.net/matrix/images/d/df/Thematrixincode99.jpg/revision/latest?cb=20140425045724' 
urllib.urlretrieve(url, "local-filename.jpg") 

# METHOD 2 
resp = urllib.urlopen(url) 
image_data = resp.read() 
f = open('/tmp/abc.jpg', 'wb') 
f.write(image_data); 
f.close(); 

req = urllib2.Request(img_url, headers={"User-Agent": "Mozilla/5.0 (X11; Linux i686) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.27 Safari/537.17"}) 
response = urllib2.urlopen(req, None,15) 
obj_file = open(output_file,'wb') 
data = response.read() 
obj_file.write(data) 
response.close(); 

每种情况下的输出文件大小为3KB。
如何找出下载图片失败的原因?有没有解决办法?

UPDATE:明白了它的工作原理上的Python 3需要Python的2.7

+0

问题不在于Python版本,但您的系统。你试图下载的地方,你得到的错误是什么? – Rahul

+0

我可以使用相同的代码@Rahul下载其他图像。一直在macOS上试用它。将尝试在Ubuntu的一次。 – vishal

+0

刚刚意识到问题出在我们当地的IT管理部门阻止这个链接!我会删除这个问题。感谢@Rahul的帮助。 – vishal

工作解决方案尝试多了一个更新:

import requests 
r = requests.get("http://vignette2.wikia.nocookie.net/matrix/images/d/df/Thematrixincode99.jpg/revision/latest?cb=20140425045724") 

with open("local-filename.jpg", 'wb') as f: 
    f.write(r.content) 
+0

这不太合适。 – vishal

+0

你应该试过你的解决方案之前张贴在这里... – vishal

+0

那么,它适用于我在python 3.5。我得到的文件大约是2.1 MB。 – Rahul