python base64转图片
时间: 2023-07-18 16:17:12 浏览: 107
可以使用Python内置的base64和PIL库将base64编码的字符串转换为图片。以下是示例代码:
```python
import base64
from PIL import Image
from io import BytesIO
# base64编码的字符串
base64_str = "data:image/png;base64,iVBORw0KGg...(省略部分内容)"
# 截取base64编码后面的部分(即图片内容)
img_data = base64_str.split(",")[1]
# 将base64编码的图片内容解码为bytes类型
img_bytes = base64.b64decode(img_data)
# 将bytes类型的图片数据转换为Image对象
img = Image.open(BytesIO(img_bytes))
# 显示图片
img.show()
```
需要注意的是,base64编码的字符串通常以"data:image/png;base64,"开头,需要将其截取掉才能进行解码。另外,解码后的数据是bytes类型,需要使用BytesIO将其转换为类文件对象,再由PIL库将其转换为Image对象。最后可以使用show()方法显示图片。
相关问题
python base64 转图片
要将Python中的base64转换为图像,可以使用以下方法之一:
方法一:使用cv2模块
```python
import cv2
import base64
import numpy as np
# 将base64字符串解码为二进制数据
image_data = base64.b64decode(base64_str)
# 将二进制数据转换为numpy数组
image_array = np.frombuffer(image_data, np.uint8)
# 使用cv2读取图像
image = cv2.imdecode(image_array, cv2.IMREAD_COLOR)
```
方法二:使用PIL模块
```python
from PIL import Image
import io
import base64
# 将base64字符串解码为二进制数据
image_data = base64.b64decode(base64_str)
# 使用io.BytesIO将二进制数据包装为文件对象
image_file = io.BytesIO(image_data)
# 使用PIL打开图像
image = Image.open(image_file)
```
python base64转图片并保存
在Python中,可以使用base64模块将base64编码的字符串转换为图片并保存。下面是一个示例代码:
```python
import base64
import io
from PIL import Image
def base64_to_image(base64_string, save_path):
# 将base64字符串解码为字节流
image_data = base64.b64decode(base64_string)
# 将字节流转换为Image对象
image = Image.open(io.BytesIO(image_data))
# 保存图片
image.save(save_path)
# 示例用法
base64_string = "base64编码的字符串"
save_path = "保存图片的路径"
base64_to_image(base64_string, save_path)
```
你需要将`base64_string`替换为你的base64编码的字符串,将`save_path`替换为你想要保存图片的路径。运行以上代码后,图片将被保存到指定路径。
阅读全文