#!/usr/bin/env python # coding:gbk import os,zipfile,shutil def getimage(docdir): os.chdir(docdir) dirlist = os.listdir(docdir) for i in dirlist: if i.endswith(".docx"): #匹配docx文件 docname = i.split(".") #以“.”做成列表形式 os.rename(i,"%s.ZIP"%docname[0]) #重命名为ZIP格式 f = zipfile.ZipFile("%s.ZIP"%docname[0], 'r') for file in f.namelist(): if "word" in file: f.extract(file) #将压缩包里的word文件夹解压出来 f.close() oldimagedir = r"%s\word\media"%docdir #定义图片文件夹 shutil.copytree(oldimagedir,"%s\%s"%(docdir,docname[0])) #拷贝到新目录,名称为word文件的名字 os.rename("%s.ZIP" % docname[0],"%s.docx"% docname[0]) #将ZIP名字还原为DOCX shutil.rmtree("%s\word"%docdir) #删除word文件夹 if __name__=="__main__": getimage(r"c:\docx")
微软的office自2007以后后缀改为docx,其实这个就是个压缩包,直接更改后缀是可以打开的,而且图片都存放在对应的word\media目录下,直接copy重新保存即可。