图片下载乱码
问题描述
为什么我图片文件打开看上去都是乱码呢?
resp = requests.get(picture)
print(resp.text)
图片和我们平时看到的文字并不一样,文字有各种编码,如“utf-8”,“gbk”等。
图片没有那么多种编码,图片是一种二进制文件,所以当我们使用get去获取我们的图片链接时,得到的是一堆二进制数据。
所以我们也就不能像查看文字一样去查看它。
问题解决
我们需要将得到的文件以二进制的方式存储下来:
#coding:utf-8
import requests
resp = requests.get("http://image.3001.net/images/20160608/14653769669317.jpg")
with open("test.jpg","wb") as img:
img.write(resp.content)
以这种方法就可以将图片保存下来。open()中的“wb”就意思是以二进制的方式写入。