python读取word文档的方法


Posted in Python onMay 09, 2015

本文实例讲述了python读取word文档的方法。分享给大家供大家参考。具体如下:

首先下载安装win32com

from win32com import client as wc
word = wc.Dispatch('Word.Application')
doc = word.Documents.Open('c:/test')
doc.SaveAs('c:/test.text', 2)
doc.Close()
word.Quit()

这种方式产生的text文档,不能用python用普通的r方式读取,为了让python可以用r方式读取,应当写成

doc.SaveAs('c:/test', 4)

注意:系统执行完成后,会自动产生文件后缀txt(虽然没有指明后缀)。
在xp系统下面,应当,

open(r'c:\text','r')
wdFormatDocument = 0
wdFormatDocument97 = 0
wdFormatDocumentDefault = 16
wdFormatDOSText = 4
wdFormatDOSTextLineBreaks = 5
wdFormatEncodedText = 7
wdFormatFilteredHTML = 10
wdFormatFlatXML = 19
wdFormatFlatXMLMacroEnabled = 20
wdFormatFlatXMLTemplate = 21
wdFormatFlatXMLTemplateMacroEnabled = 22
wdFormatHTML = 8
wdFormatPDF = 17
wdFormatRTF = 6
wdFormatTemplate = 1
wdFormatTemplate97 = 1
wdFormatText = 2
wdFormatTextLineBreaks = 3
wdFormatUnicodeText = 7
wdFormatWebArchive = 9
wdFormatXML = 11
wdFormatXMLDocument = 12
wdFormatXMLDocumentMacroEnabled = 13
wdFormatXMLTemplate = 14
wdFormatXMLTemplateMacroEnabled = 15
wdFormatXPS = 18

照着字面意思应该能对应到相应的文件格式,如果你是office 2003可能支持不了这么多格式。word文件转html有两种格式可选wdFormatHTML、wdFormatFilteredHTML(对应数字 8、10),区别是如果是wdFormatHTML格式的话,word文件里面的公式等ole对象将会存储成wmf格式,而选用 wdFormatFilteredHTML的话公式图片将存储为gif格式,而且目测可以看出用wdFormatFilteredHTML生成的HTML 明显比wdFormatHTML要干净许多。

当然你也可以用任意一种语言通过com来调用office API,比如PHP.

from win32com import client as wc
word = wc.Dispatch('Word.Application')
doc = word.Documents.Open(r'c:/test1.doc')
doc.SaveAs('c:/test1.text', 4)
doc.Close()
import re
strings=open(r'c:\test1.text','r').read()
result=re.findall('\(\s*[A-D]\s*\)|\(\xa1*[A-D]\xa1*\)|\(\s*[A-D]\s*\)|\(\xa1*[A-D]\xa1*\)',strings)
chan=re.sub('\(\s*[A-D]\s*\)|\(\xa1*[A-D]\xa1*\)|\(\s*[A-D]\s*\)|\(\xa1*[A-D]\xa1*\)','()',strings)
question=open(r'c:\question','a+')
question.write(chan)
question.close()
answer=open(r'c:\answeronly','a+')
for i,a in enumerate(result):
 m=re.search('[A-D]',a)
 answer.write(str(i+1)+' '+m.group()+'\n')
answer.close()
chan=re.sub(r'\xa3\xa8\s*[A-D]\s*\xa3\xa9','()',strings)
#不要(),容易引起歧义。

希望本文所述对大家的Python程序设计有所帮助。

Python 相关文章推荐
Python脚本实现格式化css文件
Apr 08 Python
编写Python脚本来获取Google搜索结果的示例
May 04 Python
浅谈Python2获取中文文件名的编码问题
Jan 09 Python
python3学习笔记之多进程分布式小例子
Feb 13 Python
python调用百度语音识别api
Aug 30 Python
python使用参数对嵌套字典进行取值的方法
Apr 26 Python
浅谈pytorch中的BN层的注意事项
Jun 23 Python
python实现xlwt xlrd 指定条件给excel行添加颜色
Jul 14 Python
详解numpy.ndarray.reshape()函数的参数问题
Oct 13 Python
Python中常用的os操作汇总
Nov 05 Python
七个Python必备的GUI库
Apr 27 Python
python异常中else的实例用法
Jun 15 Python
python动态性强类型用法实例
May 09 #Python
Python functools模块学习总结
May 09 #Python
Python浅拷贝与深拷贝用法实例
May 09 #Python
九步学会Python装饰器
May 09 #Python
Python类属性与实例属性用法分析
May 09 #Python
python回调函数用法实例分析
May 09 #Python
python类和函数中使用静态变量的方法
May 09 #Python
You might like
PHP在字符断点处截断文字的实现代码
2011/04/21 PHP
PHP中使用正则表达式提取中文实现笔记
2015/01/20 PHP
遍历指定目录,并存储目录内所有文件属性信息的php代码
2016/10/28 PHP
BOOM vs RR BO5 第一场 2.14
2021/03/10 DOTA
jquery的ajax从纯真网(cz88.net)获取IP地址对应地区名
2009/12/02 Javascript
原生js写的放大镜效果
2012/08/22 Javascript
NodeJS的url截取模块url-extract的使用实例
2013/11/18 NodeJs
jQuery读取XML文件内容的方法
2015/03/09 Javascript
浅析jquery数组删除指定元素的方法:grep()
2016/05/19 Javascript
根据输入邮箱号跳转到相应登录地址的解决方法
2016/12/13 Javascript
JQuery获取鼠标进入和离开容器的方向
2016/12/29 Javascript
bootstrap jquery dataTable 异步ajax刷新表格数据的实现方法
2017/02/10 Javascript
Avalonjs双向数据绑定与监听的实例代码
2017/06/23 Javascript
10行原生JS实现文字无缝滚动(超简单)
2018/01/02 Javascript
基于Vue的ajax公共方法(详解)
2018/01/20 Javascript
详解js正则表达式验证时间格式xxxx-xx-xx形式
2018/02/09 Javascript
vue2.0父子组件间传递数据的方法
2018/08/16 Javascript
vue.js的vue-cli脚手架中使用百度地图API的实例
2019/01/21 Javascript
JavaScript实现与web通信的方法详解
2020/08/07 Javascript
深入浅析Python字符编码
2015/11/12 Python
详解基于django实现的webssh简单例子
2018/07/17 Python
python实现图片彩色转化为素描
2019/01/15 Python
pip/anaconda修改镜像源,加快python模块安装速度的操作
2021/03/04 Python
详解如何获取localStorage最大存储大小的方法
2020/05/21 HTML / CSS
英国最大的宠物食品和宠物用品网上零售商: Zooplus
2016/08/01 全球购物
雪花秀美国官方网站:韩国著名草本护肤化妆品品牌
2016/10/19 全球购物
Vilebrequin欧洲官网:法国豪华泳装品牌(男士沙滩裤)
2018/04/14 全球购物
2014年五一活动策划方案
2014/03/15 职场文书
明信片寄语大全
2014/04/08 职场文书
2014年最新大专生职业生涯规划书范文
2014/09/13 职场文书
农村党员学习党的群众路线教育实践活动心得体会
2014/11/04 职场文书
处罚决定书范文
2015/06/24 职场文书
2016年学校党支部创先争优活动总结
2016/04/05 职场文书
中国式结婚:司仪主持词(范文)
2019/07/25 职场文书
PostgreSQL数据库去除重复数据和运算符的基本查询操作
2022/04/12 PostgreSQL
Nginx 502 bad gateway错误解决的九种方案及原因
2022/08/14 Servers