Python word document operation

Python word document operation

#encoding=utf-8


"""1.将.doc格式文档批量改为.docx格式文档"""
from win32com import client as wc

#将单个.doc文档改为.docx文档
w = wc.Dispatch('Word.Application')#启动word文档读写程序
file_path='D:\python笔记\word文档.doc'#读取.doc文档名称时务必使用绝对路径(路径全称)
doc = w.Documents.Open(file_path)#file_path为.doc文档所在路径,务必使用绝对路径
doc.SaveAs('D:\python笔记\word文档.docx',16)#保存,必须有参数16,否则会出错.


"""2.将多个word文档合并保存为一个文档"""
import os
import win32com.client as win32#导入pywin32包
word = win32.gencache.EnsureDispatch('Word.Application')#打开word软件
word.Visible = False#非可视化运行
output = word.Documents.Add()#新建汇总空白文档

path_base=os.getcwd()#获得基本路径
file_names=os.listdir(os.path.join(path_base,'word文档所在目录'))#获取word文档所在目录中的所有文件名称
file_names.reverse()#由于将逐步读取的文档内容拼接在汇总文档之前,因此需要将文档名称逆排序

#遍历读取word文档内容
for file in file_names:
	file_save_path = os.path.join(path_base, 'word文档所在目录', file)#创建读取文档的绝对路径
	output.Application.Selection.Range.InsertFile(file_save_path)#将读取文档插入在总文档之前!!

doc = output.Range(output.Content.Start, output.Content.End)#获取合并后文档的内容
output.SaveAs('D:\python笔记\word文档汇总.docx') #保存为指定文件
output.Close()

Guess you like

Origin blog.csdn.net/weixin_45590329/article/details/107094618