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


Posted in Python onMarch 15, 2018

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

介绍分两部分:

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

Word(*.docx)文件简述

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

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

其内容如下:

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

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

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

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

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

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海龟绘图实例教程
Jul 24 Python
python清除指定目录内所有文件中script的方法
Jun 30 Python
浅析Git版本控制器使用
Dec 10 Python
Django 2.0版本的新特性抢先看!
Jan 05 Python
Python自定义装饰器原理与用法实例分析
Jul 16 Python
Python实现对特定列表进行从小到大排序操作示例
Feb 11 Python
PySide和PyQt加载ui文件的两种方法
Feb 27 Python
python SocketServer源码深入解读
Sep 17 Python
django创建超级用户过程解析
Sep 18 Python
python中count函数简单用法
Jan 05 Python
Python爬虫爬取博客实现可视化过程解析
Jun 29 Python
pycharm配置安装autopep8自动规范代码的实现
Mar 02 Python
30秒轻松实现TensorFlow物体检测
Mar 14 #Python
tensorflow识别自己手写数字
Mar 14 #Python
磁盘垃圾文件清理器python代码实现
Aug 24 #Python
Django自定义用户认证示例详解
Mar 14 #Python
python如何压缩新文件到已有ZIP文件
Mar 14 #Python
python中format()函数的简单使用教程
Mar 14 #Python
Python批量提取PDF文件中文本的脚本
Mar 14 #Python
You might like
Codeigniter中禁止A Database Error Occurred错误提示的方法
2014/06/12 PHP
PHP时间戳和日期相互转换操作实例小结
2018/12/18 PHP
php+websocket 实现的聊天室功能详解
2020/05/27 PHP
JS中字符问题(二进制/十进制/十六进制及ASCII码之间的转换)
2008/11/03 Javascript
Javascript 中文字符串处理额外注意事项
2009/11/15 Javascript
Ext对基本类型的扩展 ext,extjs,format
2010/12/25 Javascript
js通过地址栏给action传值(中文乱码全是问号)
2013/05/02 Javascript
求数组最大最小值方法适用于任何数组
2013/08/16 Javascript
详解javascript函数的参数
2015/11/10 Javascript
解决js函数闭包内存泄露问题的办法
2016/01/25 Javascript
js从数组中删除指定值(不是指定位置)的元素实现代码
2016/09/13 Javascript
js,jq,css多方面实现简易下拉菜单功能
2017/05/13 Javascript
详解Vue整合axios的实例代码
2017/06/21 Javascript
jQuery实现的简单歌词滚动功能示例
2019/01/07 jQuery
详解JavaScript作用域和作用域链
2019/03/19 Javascript
9102了,你还不会移动端真机调试吗
2019/03/25 Javascript
详解javascript设计模式三:代理模式
2019/03/25 Javascript
javascript判断一个变量是数组还是对象
2019/04/10 Javascript
python基础教程之基本数据类型和变量声明介绍
2014/08/29 Python
python使用自定义user-agent抓取网页的方法
2015/04/15 Python
Python 16进制与中文相互转换的实现方法
2018/07/09 Python
Python3 jupyter notebook 服务器搭建过程
2018/11/30 Python
python爬虫增加访问量的方法
2019/08/22 Python
基于Python获取docx/doc文件内容代码解析
2020/02/17 Python
Python爬虫scrapy框架Cookie池(微博Cookie池)的使用
2021/01/13 Python
英国度假别墅预订:Sykes Cottages
2017/06/12 全球购物
斐乐美国官方网站:FILA美国
2019/03/01 全球购物
ORLY官网:美国专业美甲一线品牌
2019/12/11 全球购物
荷兰美妆护肤品海淘网站:Beautinow(中文)
2020/11/22 全球购物
什么是反射?如何实现反射?
2016/07/25 面试题
毕业生的自我鉴定该怎么写
2013/12/02 职场文书
室内拓展活动方案
2014/02/13 职场文书
公司成本主管岗位责任制
2014/02/21 职场文书
关于中国梦的演讲稿
2014/04/23 职场文书
校本教研活动总结
2014/07/01 职场文书
捐书倡议书
2014/08/29 职场文书