使用python对word文档进行另存为、合并操作处理

对word进行另存为

  1. 使用python对word进行操作时,需要先引用win32com的包
import win32com.client as win32
word = win32.gencache.EnsureDispatch('Word.Application')
  1. 之后需要启动word应用对象
#此处是定义对word操作是否可视化,如果为True,则会出现打开word文件,测试一下即可
word.Visible = False

#打开指定的word文件
doc = word.Documents.Open(r'D:\Python_Project\合并word文档\另存为\关羽.docx')

在这里插入图片描述
3. 将此文件另存为其他名称

doc.SaveAs(r'D:\Python_Project\合并word文档\另存为\关羽_另存为.docx')

#第2步里打开了 关羽.docx ,此时需要将其关闭
doc.Close()

在这里插入图片描述

【另存为】部分完整代码如下:

import os
#输入输出函数,用来获取目录路径
import win32com.client as win32
word = win32.gencache.EnsureDispatch('Word.Application')

#启动word对象应用
word.Visible = True

doc = word.Documents.Open(r'D:\Python_Project\合并word文档\需合并文档\关羽.docx')

doc.SaveAs(r'D:\Python_Project\合并word文档\另存为\关羽_另存为.docx')

doc.Close()

合并word

事件背景是,前段时间搬工位,每个同事都需要打印自己的名称和工位,所以每个人都会有一份word,此时就可以通过合并word生成一份所有人的信息,打印一次即可。

  1. 首先准备好需要进行合并的word文档
    在这里插入图片描述
    文档里的内容基本一致,只有姓名、字以及个人照
    在这里插入图片描述
  2. 将路径下的每个文件打印成列表
import os

files = []
for filename in os.listdir(path): #listdir可以将路径下的文件打印成列表
    filename = os.path.join(path,filename)
    files.append(filename)
  1. 将文件拼接成新文件
#获取目录下所有文件的路径
output = word.Documents.Add()
#新建空的word文档,
for file in files:
    output.Application.Selection.InsertFile(file)
#拼接文档
doc = output.Range(output.Content.Start, output.Content.End)
#获取合并后文档的内容
output.SaveAs('D://Python_Project//合并word文档//result.docx') #保存
output.Close()#关闭
  1. 可得到结果word文件
    在这里插入图片描述

【word拼接】部分完整代码如下:

import os
#输入输出函数,用来获取目录路径
import win32com.client as win32
word = win32.gencache.EnsureDispatch('Word.Application')

#启动word对象应用
word.Visible = False #是否可视化,如果改为True,则会在电脑上频繁出现word文档界面
path = r'D:\Python_Project\合并word文档\需合并文档'

#存放文件路径
files = []
for filename in os.listdir(path):
    filename = os.path.join(path,filename)
    files.append(filename)
#获取目录下所有文件的路径
output = word.Documents.Add()
#print(output)

#新建空的word文档,
for file in files:
    output.Application.Selection.InsertFile(file)

#拼接文档
doc = output.Range(output.Content.Start, output.Content.End)

#获取合并后文档的内容
output.SaveAs('D://Python_Project//合并word文档//result.docx') #保存
output.Close()#关闭
  • 3
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

孟意昶

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值