图片链接下载适用于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
答
工作解决方案尝试多了一个更新:
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)
问题不在于Python版本,但您的系统。你试图下载的地方,你得到的错误是什么? – Rahul
我可以使用相同的代码@Rahul下载其他图像。一直在macOS上试用它。将尝试在Ubuntu的一次。 – vishal
刚刚意识到问题出在我们当地的IT管理部门阻止这个链接!我会删除这个问题。感谢@Rahul的帮助。 – vishal