前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >AI帮助下,10分钟写一个word批量搜索替换的python程序2024.5.10

AI帮助下,10分钟写一个word批量搜索替换的python程序2024.5.10

作者头像
用户7138673
发布2024-05-11 17:04:30
940
发布2024-05-11 17:04:30
举报
文章被收录于专栏:大大的小数据大大的小数据

1、先用思维导图写一下需求和程序步骤,因为大程序还是要反复修改的。

2、丢给AI

3、报错了,要加列名

4、完成,检查,WPS-word-审阅-比较

5、完整代码

代码语言:javascript
复制
import pandas as pd  # 导入pandas库,用于处理Excel文件
from docx import Document  # 从python-docx库导入Document类,用于处理Word文档

# 定义函数读取_excel,用于读取Excel文件
def 读取_excel(文件路径):
    # 使用pandas的read_excel函数读取文件,文件路径作为参数传入
    数据表 = pd.read_excel(文件路径)
    # 返回读取到的数据表
    return 数据表

# 定义函数替换_word文本,用于在Word文档中查找并替换指定文本
def 替换_word文本(word_文件路径, 替换映射):
    # 使用Document类打开Word文档
    文档 = Document(word_文件路径)
    # 遍历Word文档的每个段落
    for 段落 in 文档.paragraphs:
        # 遍历替换映射中的每个键值对(搜索文本及其对应的替换文本)
        for 搜索文本, 替换文本 in 替换映射.items():
            # 如果当前段落包含搜索文本
            if 搜索文本 in 段落.text:
                # 获取当前段落的runs列表(每个run是一段具有相同格式的文本)
                inline = 段落.runs
                # 遍历当前段落的每个run
                for i in range(len(inline)):
                    # 如果当前run包含搜索文本
                    if 搜索文本 in inline[i].text:
                        # 在当前run的文本中替换搜索文本为替换文本
                        text = inline[i].text.replace(搜索文本, 替换文本)
                        # 设置run的文本为替换后的文本
                        inline[i].text = text
    # 保存更改后的文档到新文件中
    文档.save('替换后的文档.docx')

# 定义主程序函数,用于执行Excel读取和Word替换的整个流程
def 主程序(excel_文件路径, word_文件路径):
    # 使用定义好的读取_excel函数读取Excel文件,获取数据表
    数据表 = 读取_excel(excel_文件路径)
    # 将数据表中的“搜索的文本”列和“要替换的文本”列转换成字典形式的替换映射
    替换映射 = dict(zip(数据表['搜索的文本'], 数据表['要替换的文本']))
    # 使用定义好的替换_word文本函数,根据替换映射查找并替换Word文档中的文本
    替换_word文本(word_文件路径, 替换映射)
    # 打印完成消息
    print("替换完成!")

# 当直接运行该脚本时执行以下代码
if __name__ == "__main__":
    # 设置Excel文件路径
    excel_文件路径 = '替换映射.xlsx'
    # 设置Word文件路径
    word_文件路径 = '新建 DOCX 文档.docx'
    # 调用主程序函数,传入文件路径
    主程序(excel_文件路径, word_文件路径)
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2024-05-10,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 大大的小数据 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档