interesting post about recovering data:
http://linuxsleuthing.blogspot.ch/2013/09/recovering-data-from-deleted-sqlite.html
fromstructimportunpackwithopen('some.db', 'rb') asf:
data=f.read()
pageSize=unpack('>h', data[16:18])[0]
pageList= []
foroffsetinrange(0, len(data), pageSize):
ifdata[offset] ==13;
pageList.append(offset)
foroffsetinpageList:
page=data[offset: offset+pageSize]
pageHeader=unpack('>bhhhb', page[:8])
pageByte, fbOffset, cellQty, cellOffset, freebytes=pageHeader# get unallocatedstart=8+cellQty*2end=cellOffset-startunalloc=page[start:end]
print(offset, unalloc, sep=',')
# get freeblocks, if anyiffbOffset>0:
whilefbOffset!=0:
start, size=unpack('>hh', page[fbOffset: fbOffset+4])
freeblock=page[fbOffset: fbOffset+size]
print(offset, freeblock, sep=',')
fbOffset=start
interesting post about recovering data:
http://linuxsleuthing.blogspot.ch/2013/09/recovering-data-from-deleted-sqlite.html