python - 如何将 'JpegImageFile' 转换为字符串以便通过套接字发送

标签 python

我需要将 JpegImageFile 转换为字符串,以便通过 TCP 套接字将其发送到服务器,但我不知道如何...

这是我当前的代码

my_socket = connect_to_server()

data = Image.open('a.jpg')
#Need to convert data to string
my_socket.send(data.encode())
my_socket.close()

最佳答案

转换为 base64 字符串并发送图像。

import base64
from io import BytesIO

buffer = BytesIO()
data.save(buffer, format="JPEG")
base64_img = base64.b64encode(buffer.getvalue())

那么,

my_socket.send(base64_img)
my_socket.close()

阅读,

im = Image.open(BytesIO(base64.b64decode(base64_img)))

关于python - 如何将 'JpegImageFile' 转换为字符串以便通过套接字发送,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58605291/

相关文章:

python - Django CreateView 没有保存对象

python - 如何只在必要时导入模块并且只导入一次

python - XML 子元素中的变量

python - scipy中二次和二阶样条插值的区别

python - 将列表推导式传递给 Python 中的函数

python - 如何将一组文本文件读入 python 中的单个列表

python - 已弃用警告 - mataplotlib 库中的 where 参数

python - 如何在Python中保存灰度图像?

python - 如何使用 python pandas 读取已经打开的 excel 表

python - 查找二叉搜索树的最小共同祖先时出错