python读取MySQL数据库的图片
时间: 2023-12-14 09:05:46 浏览: 131
读取 MySQL 数据库中的图片,需要使用 Python 的 MySQL 连接库和 PIL(Pillow) 图像处理库。
首先,连接到 MySQL 数据库并执行查询语句,获取图片二进制数据:
```python
import mysql.connector
from mysql.connector import Error
from PIL import Image
from io import BytesIO
try:
connection = mysql.connector.connect(host='localhost',
database='mydatabase',
user='myusername',
password='mypassword')
if connection.is_connected():
cursor = connection.cursor()
cursor.execute("SELECT image_data FROM images WHERE id=1")
row = cursor.fetchone()
if row is not None:
image_data = row[0]
image = Image.open(BytesIO(image_data))
image.show()
else:
print("Image not found.")
else:
print("Failed to connect to MySQL database.")
except Error as e:
print(e)
finally:
if connection.is_connected():
cursor.close()
connection.close()
```
上面代码中的 `image_data` 是从数据库中获取到的二进制数据,`BytesIO` 将数据转换为二进制流,`PIL.Image.open` 读取二进制流并创建图像对象,`show` 方法显示图像。
上述代码仅演示了如何读取一张图片,如果需要读取多张图片,可以使用循环遍历方式,逐个读取并显示。
阅读全文