python-docx读取文档时编号无法读到

最近需要进行docx文档与pdf文件对比的任务,在使用docx包进行读取的时候遇到的问题,自动编号格式的编号无法读出来。网上各种查也没有解决办法。自能自己研究xml。发现带自动编号的都是如下形式:

  <w:pPr>
    <w:numPr>
      <w:ilvl w:val="0"/>
      <w:numId w:val="4"/>
    </w:numPr>
    <w:rPr>
      <w:rFonts w:ascii="宋体" w:hAnsi="宋体" w:cs="Arial"/>
      <w:b/>
      <w:szCs w:val="21"/>
    </w:rPr>
  </w:pPr>
  <w:bookmarkStart w:id="0" w:name="_GoBack"/>
  <w:bookmarkEnd w:id="0"/>

含有‘<w:numPr>’块的就是自动编号,而‘w:val=’ 代表了形式,比如这里的4就是从 一、二、 开始编号。
所以只需要加一层判断:

if '<w:numPr>' in doc.paragraphs[d]._element.xml:
	在该text之前加上对应的自动编码序号
©️2020 CSDN 皮肤主题: 数字20 设计师:CSDN官方博客 返回首页