前面写了如何处理word中的表格:利用python批量处理Word文件——表格 ,其实我觉得word正文应该很少用到批处理,不过万一有朋友需要呢,我们要处理的文件内容千奇百怪,但我觉得难点其实是如何对我们想处理的内容进行读写,所以这篇博客的主要内容就是word文件的读写。我把word文件中的内容分为三类:一是表格;二是图片;三是其它内容。表格和图片的处理我在另外的博客中有详细说明,这里主要谈谈word正文的读写。
在docx中,Word内容的(除表格、图片)的基本组成是段落,因此word的所有内容都存储在paragraphs中,paragraph有两个属性:一是text,二是style。text存储段落的内容,style判断段落的种类。
1.读取Word内容
1.1读取Word中的表格
1.2读取Word中的图片
1.3读取Word正文
from docx import Document
doc=Document("./a.docx")
for p in doc.paragraphs:
print(p.text)
通过遍历paragraphs就可以获得word中全部内容,有时候我们并不需要读取Word中的所有内容,我们可能只想要某些特殊的内容,比如标题,比如列表,那么docx可否实现呢,答案是肯定的。
1.3.1 读取Word中的标题
一级标题
for p in doc.paragraphs:
if p.style.name=='Heading 1':
print(p.text)
二级标题
for p in doc.par