Python 将字节转换为图像

3
我收到了一个字节流,这个字节流是从安卓客户端发送过来的图片转换而来的。我该如何在Python中将它转换为图片呢?我使用了以下代码:
img = Image.open(BytesIO(data))
img.show()
img.save('D:\\1.jpg')

但是我只能得到一个不完整的图像,如下所示:

右侧的图像是我想要发送到Python的,而左侧是我得到的。我该怎么解决这个问题呢?PS:因为我使用Eclipse完全保存了图片,所以data是完整的。

你检查过 data 是否完整且长度正确了吗? - Ignacio Vazquez-Abrams
这个答案可能会对你有所帮助。[https://dev59.com/V2Ml5IYBdhLWcg3wVltf] - theNextBigThing
@IgnacioVazquez-Abrams 这是完整的,因为我使用 Eclipse 完全保存了图像。 - 盘水新
1个回答

4

我已经解决了这个问题。我犯了一个愚蠢的错误,即我为socket.recv设置的buffersize太短了。
我将buffersize设置为更长的100000000,像这样保存图像就很容易:

 f = open('D:\\2.jpg', 'wb')
 f.write(data)
 f.close()

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接