怎么在python中将docx与doc文件进行转换

怎么在python中将docx与doc文件进行转换?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

fromwin32comimportclient
#转换doc为docx
defdoc2docx(fn):
word=client.Dispatch("Word.Application")#打开word应用程序
#forfileinfiles:
doc=word.Documents.Open(fn)#打开word文件
doc.SaveAs("{}x".format(fn),12)#另存为后缀为".docx"的文件,其中参数12或16指docx文件
doc.Close()#关闭原来word文件
word.Quit()
#转换docx为doc
defdocx2doc(fn):
word=client.Dispatch("Word.Application")#打开word应用程序
#forfileinfiles:
doc=word.Documents.Open(fn)#打开word文件
doc.SaveAs("{}".format(fn[:-1]),0)#另存为后缀为".docx"的文件,其中参数0指doc
doc.Close()#关闭原来word文件
word.Quit()
docx2doc(u"d:\\python\\1.docx")

如果想转换为其他格式文件,需要在format文件名内修改,并用如下save as 参数

怎么在python中将docx与doc文件进行转换

如docx转换为pDf,用如下语句:

doc.SaveAs("{}.pdf".format(fn[:-5]),17)

需要说明的是:

要安装OFFICE,如果是使用金山WPS的,则还不能应用

补充:python批量将文件夹内所有doc转成docx

doc转docx函数

importos
fromwin32comimportclient

defdoc_to_docx(path):
ifos.path.splitext(path)[1]==".doc":
word=client.Dispatch('Word.Application')
doc=word.Documents.Open(path)#目标路径下的文件
doc.SaveAs(os.path.splitext(path)[0]+".docx",16)#转化后路径下的文件
doc.Close()
word.Quit()

path=""#填写文件夹路径
doc_to_docx(path)

获取文件夹下的所有文件的绝对路径

importos
deffind_file(path,ext,file_list=[]):
dir=os.listdir(path)
foriindir:
i=os.path.join(path,i)
ifos.path.isdir(i):
find_file(i,ext,file_list)
else:
ifext==os.path.splitext(i)[1]:
file_list.append(i)
returnfile_list

dir_path=""
ext=".doc"
file_list=find_file(dir_path,ext)

源码

importos
fromwin32comimportclient

defdoc_to_docx(path):
ifos.path.splitext(path)[1]==".doc":
word=client.Dispatch('Word.Application')
doc=word.Documents.Open(path)#目标路径下的文件
doc.SaveAs(os.path.splitext(path)[0]+".docx",16)#转化后路径下的文件
doc.Close()
word.Quit()

deffind_file(path,ext,file_list=[]):
dir=os.listdir(path)
foriindir:
i=os.path.join(path,i)
ifos.path.isdir(i):
find_file(i,ext,file_list)
else:
ifext==os.path.splitext(i)[1]:
file_list.append(i)
returnfile_list

dir_path="C:\Users\python"#批量转换文件夹
ext=".doc"
file_list=find_file(dir_path,ext)
forfileinfile_list:
doc_to_docx(file)

关于怎么在python中将docx与doc文件进行转换问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注恰卡编程网行业资讯频道了解更多相关知识。

发布于 2021-03-13 15:41:14
收藏
分享
海报
0 条评论
168
上一篇:python怎么实现棋盘覆盖问题及可视化 下一篇:怎么在Python中使用OpenCV标记图像区域轮廓
目录

    推荐阅读

    0 条评论

    本站已关闭游客评论,请登录或者注册后再评论吧~

    忘记密码?

    图形验证码