python批量修改document.xml的图片style

import re
from lxml import etree

# 解析 XML 文件
tree = etree.parse('document.xml')

# 获取所有名为 "v:shape" 的节点,并更新它们的 "style" 属性
shapes = tree.xpath('//v:shape', namespaces={'v': 'urn:schemas-microsoft-com:vml'})
for shape in shapes:
    style = shape.get('style')
    print('修改前'+style)
    # 在这里添加您想要进行的更改,例如:
    pattern = r'(\d+(\.\d+)?)'
    # 使用正则表达式匹配字符串中的数字,并将其缩小 30%
    style = re.sub(pattern, lambda m: str(round(float(m.group(0)) * 0.7, 3)), style)
    print('修改后'+style)
    shape.set('style', style)

# 将修改后的 XML 写回到文件中
tree.write('document.xml', pretty_print=True)

你可能感兴趣的:(python,python,xml)