我对如何使用请求/ session “获取”图像后保存图像感到非常困惑!请注意url
, img_name
,和img_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'})
如果我这样做print(s)
我得到<requests.sessions.Session object at 0x036A3710>
这导致我认为我的图像正在下载。但是,如果我做类似 save_img = Image.open(s)
的事情我得到的回复是Session has no attribute read
。如果有人能解释如何将我请求的图像保存到一个文件中,那就太棒了,我是 Python 新手,这部分没有意义。另外,如果我上面的代码是错误的,我基本上复制了 http://docs.python-requests.org/en/master/user/advanced/ 中的示例。物有所值。
最佳答案
<requests.sessions.Session object at 0x036A3710>
是内存中的 session 对象本身,与图像无关,所以不要让这让您感到困惑(Python 对象的任何实例在内存中都有一个地址)。
get
函数将返回您想要的数据,因此您必须使用变量来存储它:
data = s.get(url+img_name+img_end, headers={'x-test2': 'true'})
with open('image', 'wb') as fobj:
fobj.write(data.content)
关于python - 使用请求/ session 后保存图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42172004/