需要批量替换word中的文本
如题,于是找到了win32com来操作word.
源码
源码如下,部分源码来自网络.
import win32com from win32com.client import Dispatch import os ''' 必要: 1.python 3.6 2.win32com(这个版本与py的版本一致,不是与系统的.必须注意) 1.执行前需打开wps或者word软件(可以不用打开任何文档); 2.本程序执行完之后,wps或者word软件上会显示已经被修改的文档; 3.保存所有文档即可完成替换. ''' if __name__ == '__main__': with os.scandir(".") as it: for entry in it: if not entry.name.startswith('.') and not entry.name.startswith('~') and entry.name.endswith('.doc') and entry.is_file(): filename = os.path.splitext(entry.name)[0] # 会将原文本替换为去掉后缀的文件名. word = Dispatch('Word.Application') doc = word.Documents.Open(entry.name) word.Selection.Find.Execute("原文本", False, False, False, False, False, True, 1, True,filename, 2) print("执行完成")