Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/297.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用请求/会话后保存映像_Python_Session_Python Requests - Fatal编程技术网

Python 使用请求/会话后保存映像

Python 使用请求/会话后保存映像,python,session,python-requests,Python,Session,Python Requests,在使用请求/会话“获取”图像后,我对如何保存图像感到非常困惑!请注意,url、img\u name和img\u end都是上面定义的,它们采用静态url并在末尾添加数字,以请求与这些数字对应的图像 s = requests.Session() s.auth = ('username', 'password') s.headers.update({'x-test': 'true'}) s.get(url+img_name+img_end, headers={'x-test2': 'true'})

在使用请求/会话“获取”图像后,我对如何保存图像感到非常困惑!请注意,
url
img\u name
img\u end
都是上面定义的,它们采用静态url并在末尾添加数字,以请求与这些数字对应的图像

s = requests.Session()
s.auth = ('username', 'password')
s.headers.update({'x-test': 'true'})
s.get(url+img_name+img_end, headers={'x-test2': 'true'})
如果我做了
打印
我会得到
,这会导致我认为我的图像正在下载。但是,如果我执行类似于
save\u img=Image.open(s)
的操作,我会得到一个响应,
会话没有读取属性。如果有人能解释如何将我请求的图像保存到一个文件中,那将是一件令人惊奇的事情,我是Python新手,这一部分毫无意义。此外,如果我上面的代码是错误的,我基本上是从中复制示例的,因为它是值得的。

是内存中的会话对象本身,与图像无关,所以不要让这让您感到困惑(Python对象的任何实例在内存中都有地址)

get
函数将返回所需的数据,因此您必须使用变量存储数据:

data = s.get(url+img_name+img_end, headers={'x-test2': 'true'})
with open('image', 'wb') as fobj:
    fobj.write(data.content)

非常感谢。这似乎是可行的,但是,为什么我输出的文件似乎已损坏和/或不包含真实数据?我无法打开图像,但它是370kb,所以有一些东西?您是否使用正确的文件扩展名保存它,例如
open('image.jpg','wb')
?是的,我尝试过.jpg和.png两种格式,我得到的输出是370kb,但没有图像