Python请求:下载的图像文件二进制文件与原始文件不相同?
我正在使用Python请求从web保存图像文件。但是,保存的文件与原始文件有一点二进制差异,并且比原始文件大一点。它仍然是一个有效的jpg文件,但已被置乱 代码如下:Python请求:下载的图像文件二进制文件与原始文件不相同?,python,python-requests,Python,Python Requests,我正在使用Python请求从web保存图像文件。但是,保存的文件与原始文件有一点二进制差异,并且比原始文件大一点。它仍然是一个有效的jpg文件,但已被置乱 代码如下: import requests import shutil import os if __name__ == "__main__": image_url = 'http://www.123.com/image.jpg' filename = 'out.jpg' username = 'myusername' password
import requests
import shutil
import os
if __name__ == "__main__":
image_url = 'http://www.123.com/image.jpg'
filename = 'out.jpg'
username = 'myusername'
password = 'mypasword'
path = os.path.join('c:/', filename )
r = requests.get(image_url, auth=(username, password), stream=True)
if r.status_code == 200:
with open(path, 'w') as f:
r.raw.decode_content = False
shutil.copyfileobj(r.raw, f)
print 'The End'
我做错了什么 openpath,“w”
应该是:
openpath,“wb”
b代表二进制。这将确保Python不会试图转换字符编码和换行符,不会完全按照字节对字节的方式读取或写入所有内容
另请参见openpath“w”
应该是:
openpath,“wb”
b代表二进制。这将确保Python不会试图转换字符编码和换行符,不会完全按照字节对字节的方式读取或写入所有内容
也看到