zoukankan      html  css  js  c++  java
  • python3实现批量替换.doc文件内容

    运行环境:

    python

    pywin32  https://github.com/mhammond/pywin32/releases

    脚本功能:

    遍历目录下的所有文件,将文件固定内容进行替换。

    import os,time
    import win32com
    from win32com.client import Dispatch
     
    # 基础设置
    path = r'C:UsersadministratorDesktop'  # 要读取的目录
    name = os.listdir(path)
    for i in name:
        path2 = path + '\' + i
        print(path2)
    
        open_file = path2
        # 要保存到的位置
        save_file = path2
        # 指示系统中文档的处理工具
        # 如果使用word
        exec_tool = 'Word.Application'
        # 如果使用wps
        # exec_tool = 'wps.application'
         
        # 指示运行的版本,如果是WPS应修改为
        word = win32com.client.Dispatch(exec_tool)
        # 在后台运行程序
        word.Visible = 0  # 后台运行,不显示
        # 运行过程不警告
        word.DisplayAlerts = 0  # 不警告
        # 打开word文档
        doc = word.Documents.Open(open_file)
         
         
        # 文档替换函数
        def replace_doc(old_string, new_string):
            word.Selection.Find.ClearFormatting()
            word.Selection.Find.Replacement.ClearFormatting()
            # ------------------------------------------------------
            # 此函数设计到可能出现的各种情况,请酌情修改
            # Execute(
            #         旧字符串,表示要进行替换的字符串
            #         区分大小写:这个好理解,就是大小写对其也有影响
            #         完全匹配:也就意味着不会替换单词中部分符合的内容
            #         使用通配符
            #         同等音
            #         包括单词的所有形态
            #         倒序
            #         1(不清楚是做什么的)
            #         包含格式
            #         新的文本
            #         要替换的数量,0表示不进行替换,1表示仅替换一个
            # ------------------------------------------------------
            word.Selection.Find.Execute(old_string, False, False, False, False, False, True, 1, True, new_string, 2)
         
        # 把文档中的A字符串替换为K字符串
        replace_doc('A', 'K')
    
        # 保存对Word文件所进行的修改
        doc.SaveAs(save_file)
         
        # 打印文件
        # doc.PrintOut()
        # 关闭文件
        doc.Close()
        # 退出word
        word.Quit()
    
        time.sleep(1)

    参考:https://blog.csdn.net/tineaine/article/details/107554960

  • 相关阅读:
    python3使用django1.11不支持MYSQL-python的解决办法
    abp学习目录
    日常网站整理
    C#使用TransactionScope实现事务代码
    CSS禁止选择
    数据库三种事务
    设计模式总章
    几种排序方法的总结
    将图片压缩成大小格式小的图片
    常用的wsdl地址
  • 原文地址:https://www.cnblogs.com/zhaijiahui/p/14273270.html
Copyright © 2011-2022 走看看