运维-打开Word文档并插入图片

1、需求背景

接前面访问系统自动截图的需求,需要将截到的图片插入到运维报告中指定位置,具体需求是:打开一个运维报告模板,文件为Word文档,需要将文档中特定文本格式为#P1#,#P2#等替换为指定的图片,这些特定文本可能在段落中,也可能在表格中,还能在多层嵌套表格中。

2、安装插件

Python使用的版本为3.12.7,需安装Word相关插件pip install python-docx

3、源代码

from docx import Document
from docx.shared import Inches
import re
import os

def process_paragraph(paragraph, placeholder_map):
    """
    处理单个段落中的占位符
    """
    for placeholder, (image_path, width) in placeholder_map.items():
        if placeholder in paragraph.text:
            # 使用正则表达式查找所有匹配项
            matches = list(re.finditer(re.escape(placeholder), paragraph.text))
            
            # 从后往前替换避免索引偏移
            for match in reversed(matches):
                start, end = match.span()
                
                # 分割文本
                before 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

angushine

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

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

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

打赏作者

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

抵扣说明:

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

余额充值