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实现ipsec开权限实例
Nov 11 Python
详解Python的Django框架中inclusion_tag的使用
Jul 21 Python
python多进程共享变量
Apr 06 Python
批处理与python代码混合编程的方法
May 19 Python
matplotlib在python上绘制3D散点图实例详解
Dec 09 Python
Python sorted函数详解(高级篇)
Sep 18 Python
python通过http下载文件的方法详解
Jul 26 Python
利用Python检测URL状态
Jul 31 Python
Python测试模块doctest使用解析
Aug 10 Python
python + selenium 刷B站播放量的实例代码
Jun 12 Python
Django返回HTML文件的实现方法
Sep 17 Python
Python使用mitmproxy工具监控手机 下载手机小视频
Apr 18 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安全开发 添加随机字符串验证,防止伪造跨站请求
2013/02/14 PHP
一致性哈希算法以及其PHP实现详细解析
2013/08/24 PHP
Laravel4中的Validator验证扩展用法详解
2016/07/26 PHP
PHP实现PDO操作mysql存储过程示例
2019/02/13 PHP
PHP实现笛卡尔积算法的实例讲解
2019/12/22 PHP
PHP实现文件上传与下载
2020/08/28 PHP
js 调用本地exe的例子(支持IE内核的浏览器)
2012/12/26 Javascript
基于jquery的网站幻灯片切换效果焦点图代码
2013/09/15 Javascript
jQuery Form 页面表单提交的小例子
2013/11/15 Javascript
jQuery数据类型小结(14个)
2016/01/08 Javascript
利用js编写响应式侧边栏
2016/09/17 Javascript
node.js连接MongoDB数据库的2种方法教程
2017/05/17 Javascript
阿里大于短信验证码node koa2的实现代码(最新)
2017/09/07 Javascript
jQuery实现form表单序列化转换为json对象功能示例
2018/05/23 jQuery
vue.js使用v-if实现显示与隐藏功能示例
2018/07/06 Javascript
VUE-Table上绑定Input通过render实现双向绑定数据的示例
2018/08/27 Javascript
JavaScript动态创建二维数组的方法示例
2019/02/01 Javascript
vue响应式系统之observe、watcher、dep的源码解析
2019/04/09 Javascript
微信小程序项目总结之记账小程序功能的实现(包括后端)
2019/08/20 Javascript
JavaScript canvas实现雪花随机动态飘落
2020/02/08 Javascript
浅谈JavaScript窗体Window.ShowModalDialog使用
2020/07/22 Javascript
[10:21]DOTA2-DPC中国联赛 正赛 PSG.LGD vs Aster 选手采访
2021/03/11 DOTA
Python使用分布式锁的代码演示示例
2018/07/30 Python
详解Python3注释知识点
2019/02/19 Python
Django实现学生管理系统
2019/02/26 Python
详解【python】str与json类型转换
2019/04/29 Python
Python 读取串口数据,动态绘图的示例
2019/07/02 Python
Python IDE环境之 新版Pycharm安装详细教程
2020/03/05 Python
python和pywin32实现窗口查找、遍历和点击的示例代码
2020/04/01 Python
Python项目实战之使用Django框架实现支付宝付款功能
2021/02/23 Python
CSS3 完美实现圆角效果
2009/07/13 HTML / CSS
在css3中background-clip属性与background-origin属性的用法介绍
2012/11/13 HTML / CSS
Cotton On香港网站:澳洲时装连锁品牌
2018/11/01 全球购物
毕业实习感受与体会
2015/05/26 职场文书
六五普法心得体会2016
2016/01/21 职场文书
干部作风纪律整顿心得体会
2016/01/23 职场文书