参考文章
:
强大
我这里用的是一个NORFA.txt的文件示范的 首先你要创建一个文件改一下路径即可
关于缩进的那些事
关于文件操作 的事
关于菜鸟痛苦的事
import sys
import os
import string
headers=[(b'JFIF', 6, "jpg"),(b'GIF',0,"gif"),(b'PNG',1, "png")]
marker=[]
filename = "d:\\ppt\\NORFA.txt"
try:
fid = open(filename,'rb')
except:
sys.exit(1)
numlin = len(fid.readlines())
fid .seek(0)
i = 0; s = 0
curlin = fid.readline()
while i < numlin:
for flag,offset, ext in headers:
index =curlin.find(flag)
if index < 0:
continue
else:
pos = s + index -offset
marker.append((pos, ext))
s = s + len(curlin)
curlin = fid.readline()
i += 1
fid.seek(0)
j = len(marker)
imgnum = 0
if j == 0:
print("No images included in the document")
sys.exit(1)
for i in range(0,j):
if i == j-1:
info = marker[i]
thispos = info[0]
thisext = info[1]
nextpos = s
gap = nextpos - thispos
fid.seek(thispos)
data = fid.read(gap)
imgname = "imgname%02d.%s" % (i,thisext)
fid1 = open(imgname,'wb')
fid1.write(data)
fid1.close()
imgnum += 1
else:
info = marker[i]
thispos = info[0]
thisext = info[1]
nextinfo = marker[i+1]
nextpos = nextinfo[0]
gap = nextpos - thispos
fid.seek(thispos)
data = fid.read(gap)
imgname = "imgname%02d.%s" % (i, thisext)
fid1 = open(imgname, 'wb')
fid1.write(data)
fid1.close()
imgnum += 1
fid.close()
print("%02d imgaes have benn extracted" % imgnum)