python 实现docx与doc文件的互相转换
作者:weixin_45903952 时间:2022-01-19 06:45:58
因文件格式要求,需要将docx 与doc文件相互转换,特寻找python代码,与大家共分享
from win32com import client
#转换doc为docx
def doc2docx(fn):
word = client.Dispatch("Word.Application") # 打开word应用程序
#for file in files:
doc = word.Documents.Open(fn) #打开word文件
doc.SaveAs("{}x".format(fn), 12)#另存为后缀为".docx"的文件,其中参数12或16指docx文件
doc.Close() #关闭原来word文件
word.Quit()
#转换docx为doc
def docx2doc(fn):
word = client.Dispatch("Word.Application") # 打开word应用程序
#for file in files:
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 参数
如docx转换为pDf,用如下语句:
doc.SaveAs("{}.pdf".format(fn[:-5]), 17)
需要说明的是:
要安装OFFICE,如果是使用金山WPS的,则还不能应用
补充:python批量将文件夹内所有doc转成docx
doc转docx函数
import os
from win32com import client
def doc_to_docx(path):
if os.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)
获取文件夹下的所有文件的绝对路径
import os
def find_file(path, ext, file_list=[]):
dir = os.listdir(path)
for i in dir:
i = os.path.join(path, i)
if os.path.isdir(i):
find_file(i, ext, file_list)
else:
if ext == os.path.splitext(i)[1]:
file_list.append(i)
return file_list
dir_path = ""
ext = ".doc"
file_list = find_file(dir_path, ext)
源码
import os
from win32com import client
def doc_to_docx(path):
if os.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()
def find_file(path, ext, file_list=[]):
dir = os.listdir(path)
for i in dir:
i = os.path.join(path, i)
if os.path.isdir(i):
find_file(i, ext, file_list)
else:
if ext == os.path.splitext(i)[1]:
file_list.append(i)
return file_list
dir_path = "C:\Users\python"#批量转换文件夹
ext = ".doc"
file_list = find_file(dir_path, ext)
for file in file_list:
doc_to_docx(file)
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。如有错误或未考虑完全的地方,望不吝赐教。
来源:https://blog.csdn.net/weixin_45903952/article/details/105223595
标签:python,docx,doc
0
投稿
猜你喜欢
解决Pytorch内存溢出,Ubuntu进程killed的问题
2023-08-31 22:12:16
Python中使用logging和traceback模块记录日志和跟踪异常
2023-09-20 16:08:51
python配置虚拟环境步骤
2023-10-22 09:34:51
Vue声明式渲染详解
2024-04-30 10:22:25
Python3+Requests+Excel完整接口自动化测试框架的实现
2022-12-12 00:19:52
Python异步爬虫requests和aiohttp中代理IP的使用
2021-06-26 11:56:05
Vue+Mock.js模拟登录和表格的增删改查功能
2024-05-29 22:20:04
MySQL如何清空慢查询文件
2024-01-17 07:45:37
Vue+Element+Springboot图片上传的实现示例
2024-06-07 15:19:39
Python 自动控制原理 control的详细解说
2023-04-17 09:53:45
python神经网络学习利用PyTorch进行回归运算
2023-02-24 13:30:47
W3C网页内容无障碍指南2.0(WCAG)
2008-11-20 13:40:00
angularJS实现表格部分列展开缩起示例代码
2024-04-16 10:40:42
自定义asp错误信息的显示
2007-09-13 12:33:00
python3 深浅copy对比详解
2023-11-08 11:12:51
使用classList来实现两个按钮样式的切换方法
2024-04-16 09:35:19
Python基于csv模块实现读取与写入csv数据的方法
2023-04-12 23:14:34
javascript实现文本框标签验证的实例代码
2024-04-25 13:07:41
Python爬虫获取豆瓣电影并写入excel
2022-04-24 06:41:12
oracle快速删除重复的记录
2010-07-23 13:03:00