通过对db包的分析,照片存储在db包中FJ表中的FJ字段(blob类型),并且查询知道FJMC(照片名称)不唯一,所以根据DKBSM(图斑标识码)与FJMC(照片名称)字段合并作为唯一的名称提取图片。
SELECT FJMC,COUNT(*) FROM FJ GROUP BY FJMC HAVING COUNT(*)>1;
通过python、sqlite3提取图片,代码如下:
import sqlite3
import os
conn=sqlite3.connect('d:\\test0428\\test20240328.db')
cursor=conn.cursor()
#计算表的行数
cursor.execute("SELECT COUNT(*) FROM FJ")
rowid1=cursor.fetchone()[0]
print('行数:',rowid1)
with open('rizhi.txt','a') as f1: #操作写入txt文件
for x in range(rowid1+1):
query='SELECT DKBSM,FJMC,FJ FROM FJ WHERE rowid=?' #按行查询
cursor.execute(query,(x,))
for row in cursor:
im