13.3.1 读取 Word 文档

让我们尝试使用 python-docx  模块。从 http://nostarch.com/automatestuff/下载
demo.docx,并将它保存在当前工作目录中。然后在交互式环境中输入以下代码:

>>>  import  docx
➊  >>>  doc  =  docx.Document('demo.docx')
➋  >>>  len(doc.paragraphs)
7
➌  >>>  doc.paragraphs[0].text
'Document  Title'
➍  >>>  doc.paragraphs[1].text
'A  plain  paragraph  with  some  bold  and  some  italic'
➎  >>>  len(doc.paragraphs[1].runs)
4
➏  >>>  doc.paragraphs[1].runs[0].text
'A  plain  paragraph  with  some  '
➐  >>>  doc.paragraphs[1].runs[1].text
'bold'
➑  >>>  doc.paragraphs[1].runs[2].text
'  and  some  '
➒  >>>  doc.paragraphs[1].runs[3].text
'italic'

在➊行,我们在Python 中打开了一个.docx 文件,调用docx.Document(),传入文件名demo.docx。这将返回一个 Document 对象,它有 
paragraphs 属性,是 Paragraph对象的列表。如果我们对 doc.paragraphs 调用 len(),将返回 7。这告诉我们,该文档有 7 个Paragraph 
对象➋。每个 Paragraph 对象都有一个text 属性,包含该段中文本的字符串(没有样式信息)。这里,第一个 text 
属性包含'DocumentTitle'➌,第二个包含 'A plain paragraph with some bold and some 
italic'➍。
每个 Paragraph 对象也有一个 runs 属性,它是 Run 对象的列表。Run 对象也有一个 text 属性,包含那个延续中的文本。我们看看第二个 Paragraph  对象中的 
text属性,'A plain paragraph with some bold and some italic'。对这个Paragraph 对象调用len(),结果告诉我们有 4 个Run 
对象➎。第一个对象包含'A plain paragraph with some '➏。然后,文本变为粗体样式,所以’bold’开始了一个新的 Run  
对象➐。在这之后,文本又回到了非粗体的样式,这导致了第三个 Run 对象,' and some 
'➑。最后,第四个对象包含'italic',是斜体样式➒。
有了 python-docx,Python 程序就能从.docx 文件中读取文本,像其他的字符串值一样使用它。
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大飞哥软件自习室

希望支持

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值