Python读取Word(.docx)正文信息的方法

yipeiwu_com7年前Python基础

本文介绍用Python简单读取*.docx文件信息,一些python-word库就是对这种方法的扩展。

介绍分两部分:

  • Word(*.docx)文件简述
  • Python提取Word信息

Word(*.docx)文件简述

大约在2008年以前,Office产品中Word用.doc文件格式,这种二进制格式很难与其他软件兼容。
为了跟上时代,微软采用类XML格式标准定义其新版Word文件.docx。
.docx实际上是一个zip的压缩文件,比如我们有一个test.docx的文件:

其内容如下:

改变其后缀名为test.zip,然后解压,会得到如下文件:

其中Word文件的正文内容被保持在word/document.xml中,我们可以打开查看:

Python提取Word信息

根据Word(.docx)文件格式,我们遵循如下步骤进行正文信息的提取:

1 解压.docx文件
2 用BeautifulSoup解析word/document.xml提取正文信息

具体代码如下:

from zipfile import ZipFile
from bs4 import BeautifulSoup

document=ZipFile('test.docx')
xml=document.read("word/document.xml")
wordObj=BeautifulSoup(xml.decode("utf-8"))
texts=wordObj.findAll("w:t")
for text in texts:
  print(text.text)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

使用Python opencv实现视频与图片的相互转换

因为最近要经常转换数据集进行实验,因此记录一下。 1、视频转图片 即为将视频解析为一帧一帧的图片: import cv2 vc=cv2.VideoCapture("/home/hqd...

Flask之请求钩子的实现

请求钩子 通过装饰器为一个模块添加请求钩子, 对当前模块的请求进行额外的处理. 比如权限验证. 说白了,就是在执行视图函数前后你可以进行一些处理,Flask使用装饰器为我们提供了注册...

django 配置阿里云OSS存储media文件的例子

1. 安装django-aliyun-oss2-storage包 linux上用 pip install django-aliyun-oss2-storage 无报错,顺利安装 wind...

Python的Django框架使用入门指引

Python的Django框架使用入门指引

 前言 传统 Web 开发方式常常需要编写繁琐乏味的重复性代码,不仅页面表现与逻辑实现的代码混杂在一起,而且代码编写效率不高。对于开发者来说,选择一个功能强大并且操作简洁的开发...

值得收藏的10道python 面试题

值得收藏的10道python 面试题

Q1:PEP8是什么?Python之禅(import this)是什么? 这题是考察你对编码规范的认识,无论是自己写代码还是在团队中写代码,了解并遵循代码规范是很基础的要求。企业中在提交...