之前看网上的资料,大部分都是用 python-docx 库来删除 word 文档的页眉、页脚:

header.is_linked_to_previous = True

但是实际使用下来,问题不少,也不能保证所有页面(尤其是第一页)的页眉、页脚都被有效清除。
于是我想使用 win32com ,但网上的资料实在太少。经过一番探索,我得出了下面的方法:

首先安装:

pip install pypiwin32

编写 python 代码:

import os
from win32com import client# 用来进行 word 文档的打开、保存、关闭操作
word = client.DispatchEx("Word.Application")# 删除页眉、页脚的核心
wb = client.DispatchEx("Word.Basic")def removeHeaderFooter(file):'''Para: file: word文档路径,需要包括文件名、拓展名'''# 打开文档,注意参数要是绝对路径,可以使用 os 库的方法进行转化wordDoc = word.Documents.Open(os.path.abspath(file), ReadOnly=0)# 调用 Word.Basic 来进行操作# 注意后面没有表示函数的括号wb.RemoveHeaderwb.RemoveFooter# 保存文件,此外还可以为 SaveAs 函数增加 FileFormat=17 参数来保存为 pdf 文件(拓展名需要更改一下)wordDoc.SaveAs(os.path.abspath(file))# 注意,一定要关闭文件,因此建议将上面内容用 try 包起来,确保文件关闭# 如果没有正确关闭,则下次无法正常打开# 如有意外,可以将任务管理器中的 WINWORD 进程关闭,并将文件夹内的隐藏文件 ~$... .docx 删掉(可能是隐藏的)wordDoc.Close()if __name__ == '__main__':removeHeaderFooter('test.docx')

如果需要遍历文件夹内所有 word 文件:

# 遍历文件夹
for name in os.listdir(path):# 判断是文件,且是 word 文件if os.path.isfile(os.path.join(path, name)) and name.split('.')[-1].lower() in ['doc', 'docx']:print(f'{name}:removing header and footer...')removeHeaderFooter(os.path.join(path, name))

本文原创,转载请注明:https://blog.csdn.net/swkfk/article/details/113856618

python (win32com) 批量删除 word (docx, doc) 中所有页眉、页脚 (Word.Application, Word.Basic)相关推荐

  1. Word控件Spire.Doc 【页眉页脚】教程(4): 从C#中的word文档中删除标题

    Spire.Doc for .NET是一款专门对 Word 文档进行操作的 .NET 类库.在于帮助开发人员无需安装 Microsoft Word情况下,轻松快捷高效地创建.编辑.转换和打印 Micr ...

  2. indesign选中不了图片删除_有办法了!批量删除多个Word页眉页脚

    在实际工作中,我们时常需要添加页眉页脚,那如果不需要,该如何删除呢?怎样批量删除多个文档的页眉页脚呢?本期Word妹与大家分享相应的技巧. 1.删除单个文档的页眉页脚 双击页眉处,进入编辑状态,然后选 ...

  3. Python初学尝试:word批量刷格式转PDF,替换页眉页脚

    Python初学尝试:word批量刷格式转PDF,替换页眉页脚 初学尝试 round 1 ronund 2 easygui round 4 PyQt5 round 4 wxpython 小结 初学尝试 ...

  4. word关闭时卡死_word页眉处理技巧:用VBA快速删除批量页眉页脚

    编按:一篇长文档,假设有1000页,大家是否想过如何快速批量删除这个文档中的所有页眉页脚?如果有想过,那你会用什么方法删除它呢?带着这个问题,我们挖掘到了一个几乎不为人知的Word页眉页脚批量处理技巧 ...

  5. VBA中关于WORD的基本应用 比如批量改页眉页脚,从文件名取数字作为页眉等等。

    VBA中关于WORD的基本应用 比如批量改页眉页脚,从文件名取数字作为页眉等等. 以下是代码,直接在Word的VBA编辑器里粘贴上去就OK了. Sub 批量转PDF() Dim i As Varian ...

  6. Word控件Spire.Doc 【页眉页脚】教程(1):用C#/VB.NET:在 Word 文档中添加页眉和页脚

    Spire.Doc for .NET是一款专门对 Word 文档进行操作的 .NET 类库.在于帮助开发人员无需安装 Microsoft Word情况下,轻松快捷高效地创建.编辑.转换和打印 Micr ...

  7. python 操作word页眉表格_python批量设置多个Excel文件页眉页脚的脚本

    本文实例为大家分享了python批量设置多个Excel文件页眉页脚的具体代码,供大家参考,具体内容如下 import os import openpyxl from openpyxl.workshee ...

  8. vue中如何加入横线_在word文档中如何快速添加页眉横线和删除页眉横线?

    你还在烦恼怎么给word文档页眉添加横线和删除页眉横线吗?不用烦恼!今天小白就教您快速添加页眉横线和快速删除页眉横线的方法.赶快一起来学习一下!在word文档中如何快速添加页眉横线 1.打开word文 ...

  9. 批量删除Excel文档中的超链接

    我们在对Excel表格进行操作的时候,经常发现有超级链接.但如果因为某种原因不想保留超级链接,就需要手动进行删除.如果要是只删除一个超级链接非常简单,将鼠标放到超级链接上,然后按鼠标右键,选择&quo ...

最新文章

  1. 搭建多语言外文网站需要注意三个细节问题
  2. Python中for else注意事项
  3. iOS开发中对于一些常用的相对路径(持续更新)
  4. 大横琴科技联合阿里云发布全国首个跨境服务创新平台琴澳通
  5. 数据结构基础(8) --单链表的设计与实现(1)之基本操作
  6. Mybatis批量删除
  7. oracle中md5加密解密_Oracle定义DES加密解密及MD5加密函数示例
  8. 总结: C++ 中如何把输出结果写入到文件中
  9. IO多路复用之select、poll、epoll介绍
  10. Centos6.5之yum安装LAMP+wordpress
  11. Android隐藏桌面图标实现
  12. 网络扫描 : nbtscan
  13. java web音乐播放器_[JavaWeb]网页音乐播放器
  14. 最大销售额——01背包问题
  15. Retrofit统一异常处理
  16. c语言中fflush作用,详解C语言fflush()函数的使用
  17. Google的搜索结果真的没有人为参与吗?
  18. 如何让微信号开通检测软件替你顶起一片天?
  19. linux 重定向 21
  20. 基于51单片机智能大棚智能花盆浇水浇花灌溉补光散热原理图Proteus仿真

热门文章

  1. 宝石排列 java_重新排列序列以最大化顺序差异,红宝石
  2. 初学01-夜神模拟器连接Android Studio
  3. CRC-16 CCITT
  4. java共享文件夹SMB1服务报错jcifs.smb.SmbException: Failed to connect: 0.0.0.0<00>/122.168.23.26
  5. 关于(archive)归档和(unarchive)解档的处理。
  6. SQL面试题练习记录
  7. JeeSite4 一些前端资料 - 来自作者ThinkGem
  8. AUC / uAUC
  9. 奶茶店的线上线下营销策略
  10. 计算机协会素拓小游戏,素拓游戏策划书-20210418231500.doc-原创力文档