将图像保存到SQLite数据库

时间:2019-10-13 17:08:13

标签: python sqlite blob

我有一个程序可以从网站上收集一些数据。文本数据被附加到“ info”数据框,照片url被附加到“照片”数据框。

我已经将“ info”表插入到我的SQL数据库中,并且工作正常!

data.to_sql('Flat', con=conn, if_exists='replace',index=False)

现在,我需要了解如何将图像链接转换为Blob数据并将其插入数据库。

1 个答案:

答案 0 :(得分:2)

BLOB是 B 初始 L OB ject s 。首先,您需要将图像转换为二进制对象。

def convertToBinaryData(imageLocation):
    #Convert digital data to binary format
    with open(imageLocation, 'rb') as file:
        blobData = file.read()
    return blobData

其余的都是简单的插入,请确保已连接。创建一个插入语句,将您的二进制文件注入到该语句中。

 insert = """ INSERT INTO 'images' ('id', 'image') VALUES (?, ?) """
 id = 1
 image = convertToBinary(imageLocation)
 cursor.execute(insert, (id, image))
 connection.commit()

这些函数省略了如何创建连接和获取游标的方法,但是完整的示例可以在以下网址找到:https://pynative.com/python-sqlite-blob-insert-and-retrieve-digital-data/