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检测服务器是否正常
Feb 16 Python
python中使用sys模板和logging模块获取行号和函数名的方法
Apr 15 Python
python 示例分享---逻辑推理编程解决八皇后
Jul 20 Python
Django中几种重定向方法
Apr 28 Python
Python 获得命令行参数的方法(推荐)
Jan 24 Python
python中从str中提取元素到list以及将list转换为str的方法
Jun 26 Python
Django2.1.3 中间件使用详解
Nov 26 Python
python对文件目录的操作方法实例总结
Jun 24 Python
python 弧度与角度互转实例
Apr 15 Python
Python使用socketServer包搭建简易服务器过程详解
Jun 12 Python
详解python的super()的作用和原理
Oct 29 Python
pycharm中选中一个单词替换所有重复单词的实现方法
Nov 17 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
咖啡界又出新概念,无需咖啡豆的分子咖啡
2021/03/03 咖啡文化
让PHP支持页面回退的两种方法
2008/01/10 PHP
ThinkPHP3.1.3版本新特性概述
2014/06/19 PHP
php中HTTP_REFERER函数用法实例
2014/11/21 PHP
thinkphp中memcache的用法实例
2014/11/29 PHP
PHP浮点数精度问题汇总
2015/05/13 PHP
php实现读取和写入tab分割的文件
2015/06/01 PHP
curl和libcurl的区别简介
2015/07/01 PHP
向大师们学习Javascript(视频与PPT)
2009/12/27 Javascript
JQuery模板插件 jquery.tmpl 动态ajax扩展
2011/11/10 Javascript
angularjs中的单元测试实例
2014/12/06 Javascript
基于javascript实现浏览器滚动条快到底部时自动加载数据
2015/11/30 Javascript
JS中判断字符串中出现次数最多的字符及出现的次数的简单实例
2016/06/03 Javascript
jQuery 选择符详细介绍及整理
2016/12/02 Javascript
JS中解决谷歌浏览器记住密码输入框颜色改变功能
2017/02/13 Javascript
如何使用bootstrap框架 bootstrap入门必看!
2017/04/13 Javascript
vue2.0 移动端实现下拉刷新和上拉加载更多的示例
2018/04/23 Javascript
使用elementUI实现将图片上传到本地的示例
2018/09/04 Javascript
[05:14]辉夜杯主赛事第二日 RECAP精彩回顾
2015/12/27 DOTA
[42:25]EG vs Spirit Supermajor 败者组 BO3 第二场 6.4
2018/06/05 DOTA
分享Python字符串关键点
2015/12/13 Python
Python脚本处理空格的方法
2016/08/08 Python
Python实现堡垒机模式下远程命令执行操作示例
2019/05/09 Python
python 实现方阵的对角线遍历示例
2019/11/29 Python
Windows下Anaconda安装、换源与更新的方法
2020/04/17 Python
详解Python中第三方库Faker
2020/09/25 Python
Python自动化办公Excel模块openpyxl原理及用法解析
2020/11/05 Python
使用HTML5做的导航条详细步骤
2020/10/19 HTML / CSS
行政部工作岗位职责范本
2014/03/05 职场文书
2015年员工工作表现评语
2015/03/25 职场文书
企业财务人员岗位职责
2015/04/14 职场文书
公司催款律师函
2015/05/27 职场文书
小区物业管理2015年度工作总结
2015/10/22 职场文书
解决persistence.xml配置文件修改存放路径的问题
2022/02/24 Java/Android
Python字符串的转义字符
2022/04/07 Python
微信小程序 WeUI扩展组件库的入门教程
2022/04/21 Javascript