我正在使用python-docx将Word docx文件转换为专有XML格式。
我在使用项目符号/枚举列表时遇到麻烦。在许多Word文档中,当我使用python-docx打开它们并查看项目符号/枚举列表的段落样式时,列表中的某些项目将为“列表段落”,但其中许多将为“普通”。
假设它们都应该是'List Paragraph',有没有一种方法可以验证这是否与Word文档或python-docx包有关?
而且,当段落样式不是应有的样式时,是否有办法识别这些项目符号/数字?例如。使用paragraph_format
?
项目符号可以至少两种不同的方式出现在Word中的段落上:
我怀疑用户倾向于陷入这两种习惯之一。始终使用样式可以使您只需修改样式即可调整所有这些段落的格式。但是我怀疑98%以上的用户养成了“单击项目符号按钮”的习惯。
无论如何,以这种方式找到混合在一起的文档不足为奇。
[不幸的是,python-docx
当前不支持直接应用的项目符号,无论是应用它们还是对其进行检测。
[如果您具有检查段落XML的技能(print(paragraph._p.xml)
是开始),那么您可能可以在paragraph._p
(段落的基础XML元素)上使用XPath表达式来检测它是否具有相信是<w:bu>
元素,这表明它具有直接应用的项目符号。检查已知有直接应用项目符号的段落的XML,应会为您提供在那里要查找的内容的详细信息。