我有一个docx
文件,我需要在其中编辑其段落(段落可能包含方程式)。我尝试使用python-docx
完成这些工作,但未成功,因为编辑每个段落的文本并将其替换为已编辑的新段落需要调用p.add_paragraphs(editText(paragraph.text))
,该忽略和忽略任何数学方程式。
通过寻找一种实现此目标的方法,我发现通过找到<w:t>
标记并像这样编辑其内容,可以通过XML代码完成此工作:
tree= ET.parse(filename)
root=tree.getroot()
for par in root.findall('w:p'):
if par.find('w:r'):
myText= par.find('w:r').find('w:t')
myText.text= editText(myText.text)
然后我必须将结果另存为docx。我的说法是:文件名的格式是什么?应该是document.xml文件吗?如果是这样,我如何从原始document.docx文件中找到该文件?还有一个问题是,如何再次将结果另存为.docx文件?
为了将docx保存为xml,我已尝试通过document.save('Document2.xml'
保存它)。但是结果的内容不正确。
您能给我一些建议如何做吗?
Python并不是最好的工具。如果您需要自动执行Word文档或多个Word文档中的内容,请使用VBA。我什至无法告诉您您在这里试图做什么,但是让我们从头开始,做一些简单的事情。例如,如果您想遍历Word文档中的所有段落并仅选择方程式,则可以运行下面的代码来做到这一点。