Python读取word文档(python-docx包)
最近想统计word文档中的一些信息,人工统计的话。。。三天三夜吧
python 不愧是万能语言,发现有一个包叫做 docx,非常好用,具体查看官方文档:https://python-docx.readthedocs.io/en/latest/index.html
(v0.8.6)
还有一个是 win32com 包,这个包安装步骤如下:
http://jingyan.baidu.com/article/d3b74d64c853081f77e60929.html
安装好 win32com之后安装 docx包:
pip install python-docx
import docx
from win32com import client as wc
import matplotlib.pyplot as plt
from collections import Counter
import os
# 首先将doc转换成docx
word = wc.Dispatch("Word.Application")
# 找到word路径 + 文件名 ,即可打开文件
full_path = 'C:\\Users\\ASUS\\Desktop\\test.docx'
doc = word.Documents.Open(full_path)
# 使用参数16表示将doc转换成docx,保存成docx后才能 读文件
doc.SaveAs(r"D:\\test2.docx",16)
doc.Close()
word.Quit()
# 读取word内容
# 这里是以段落为单位的,下面用一个for 遍历所有段落
doc = docx.Document("D:\\test2.docx")
parag_num = 0
for para in doc.paragraphs :
print(para.text)
parag += 1
print ('This document has ', parag, ' paragraphs')
word文档里是这样的:
执行代码结果:
还可以读取word文档中的表格,图片等其他信息,方便对多个word文档进行统计,分析,处理
Python读取word文档(python-docx包)的更多相关文章
- Python读取word文档内容
1,利用python读取纯文字的word文档,读取段落和段落里的文字. 先读取段落,代码如下: 1 ''' 2 #利用python读取word文档,先读取段落 3 ''' 4 #导入所需库 5 fro ...
- 2018-10-04 [日常]用Python读取word文档中的表格并比较
最近想对某些word文档(docx)的表格内容作比较, 于是找了一下相关工具. 参考Automate the Boring Stuff with Python中的word部分, 试用了python-d ...
- python读取word文档
周末需要做一个统计word文档字数的问题,刚开始以为很简单,因为之前做过excel表格相关的任务,所以认为利用扩展模块应该比较简单. 通过搜索,确实搜到了一个python操作word的模块,pytho ...
- Python之word文档模板套用 - 真正的模板格式套用
Python之word文档模板套用: 1 ''' 2 #word模板套用2:套用模板 3 ''' 4 5 #导入所需库 6 from docx import Document 7 ''' 8 #另存w ...
- Python之word文档替换字符串(也可以用于短模板套用)
Python之word文档替换字符串(也可以用于短模板套用),代码如下: 1 ''' 2 #word模板套用1:创建模板,适合比较短的文档 3 ''' 4 5 #导入所需库 6 from docx i ...
- 利用Python操作Word文档【图片】
利用Python操作Word文档
- C# 设置、删除、读取Word文档背景——基于Spire.Cloud.Word
Spire.Cloud.Word.Sdk提供了接口SetBackgroudColor().SetBackgroudImage().DeleteBackground().GetBackgroudColo ...
- java中读取word文档里的内容
package com.cn.peitest.excel.word; import java.io.FileInputStream; import java.io.FileOutputStream; ...
- C#读取Word文档内容代码
首先要添加引用com组件:然后引用: using Word = Microsoft.Office.Interop.Word; 获取内容: /// /// 读取 word文档 返回内容 /// //// ...
随机推荐
- NDK安装教程 not a valid ndk directory -- Eclipse
第一步:下载 Eclipse IDE for Java Developers http://www.eclipse.org/downloads/ 第二步:下载CDT http://www.eclips ...
- microsoft-sql-server release-notes
https://docs.microsoft.com/en-us/sql/release-notes/microsoft-sql-server
- Linux系统入门命令100条 转
https://www.howtoforge.com/linux-commands/ 2017-04-27 RiboseYim 睿哥杂货铺 Author : Himanshu Arora 原文:htt ...
- selenium清空元素时,.clear不执行
应该是由于鼠标焦点没有定位到相应元素 driver.find_element_by_xpath('//input[@type="password"]').click() drive ...
- 安装dcm4chee-arc-light-5.4.1-mysql步骤
一.进入网址: https://github.com/dcm4che/dcm4chee-arc-light/wiki/Installation 这个是GitHub上面给的步骤,可能会比较难理解,按照所 ...
- Delphi之过程与函数
过程以保留字procedure开始,没有返回值:函数以保留字function开始,有返回值. 参数位于括号里面,多个参数之间以分号分隔,例如: procedure SetDate(Year: Inte ...
- JS方面重点摘要(二)
1.函数声明与函数表达式 (1)变量声明会置顶提前,但赋值仍在原地方(2)函数声明同变量声明一样会提前:但是,函数表达式没有提前,就相当于平时的变量赋值(3)函数声明会覆盖变量声明,但不会覆盖变量赋值 ...
- XShell命令行使用
1.建立连接: 2.查看总体目录: 3.查看对应服务目录: 4.删除对应jar包后,再查看目录下文件: 5.上传对应的jar文件: 6.重启服务 7.查看服务日志: 8.mv old-name new ...
- Unix网络编程学习笔记之第12章 IPv4与IPv6的互操作性
一. 简单介绍 如果我们本章讨论的主机都是支持双栈的,即支持IPv4地址.也支持Ipv6地址. 我们本次讨论的点:client与server端使用的是不同类型的地址.由于同样类型的地址没什么可讲的. ...
- [Functional Programming] Compose Simple State ADT Transitions into One Complex Transaction
State is a lazy datatype and as such we can combine many simple transitions into one very complex on ...