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深入学习之特殊方法与多范式
Aug 31 Python
python脚本实现xls(xlsx)转成csv
Apr 10 Python
Python装饰器用法实例总结
May 26 Python
Python中的元组介绍
Jan 28 Python
浅谈Python3中strip()、lstrip()、rstrip()用法详解
Apr 29 Python
对Python强大的可变参数传递机制详解
Jun 13 Python
Python弹出输入框并获取输入值的实例
Jun 18 Python
pandas 选取行和列数据的方法详解
Aug 08 Python
python global和nonlocal用法解析
Feb 03 Python
解决pymysql cursor.fetchall() 获取不到数据的问题
May 15 Python
windows支持哪个版本的python
Jul 03 Python
教你如何使用Python实现二叉树结构及三种遍历
Jun 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一个找二层目录的小东东
2012/08/02 PHP
php 验证码(倾斜,正弦干扰线,黏贴,旋转)
2013/06/29 PHP
PHP登录验证码的实现与使用方法
2016/07/07 PHP
PHP中trait使用方法详细介绍
2017/05/21 PHP
Laravel配置全局公共函数的方法步骤
2019/05/09 PHP
jquery如何扑捉回车键触发的事件
2014/04/24 Javascript
javascript中undefined与null的区别
2015/08/16 Javascript
JavaScript获取客户端IP的方法(新方法)
2016/03/11 Javascript
浅谈JavaScript事件绑定的常用方法及其优缺点分析
2016/11/01 Javascript
JavaScript基础之静态方法和实例方法分析
2018/12/26 Javascript
如何在微信小程序中实现Mixins方案
2019/06/20 Javascript
jquery弹窗时禁止body滚动条滚动的例子
2019/09/21 jQuery
HTML+JavaScript实现扫雷小游戏
2019/09/30 Javascript
Python实现PS图像抽象画风效果的方法
2018/01/23 Python
python实现点对点聊天程序
2018/07/28 Python
对tensorflow 的模型保存和调用实例讲解
2018/07/28 Python
python3 拼接字符串的7种方法
2018/09/12 Python
python已协程方式处理任务实现过程
2019/12/27 Python
在python中使用pyspark读写Hive数据操作
2020/06/06 Python
Pycharm Available Package无法显示/安装包的问题Error Loading Package List解决
2020/09/18 Python
Pycharm快捷键配置详细整理
2020/10/13 Python
新加坡一家在线男士皮具品牌:Faire Leather Co.
2019/12/01 全球购物
运动会广播稿50字
2014/01/26 职场文书
运动会领导邀请函
2014/02/05 职场文书
电脑售后服务承诺书
2014/03/27 职场文书
仓库管理计划书
2014/05/04 职场文书
档案保密承诺书
2014/06/03 职场文书
学校安全工作汇报材料
2014/08/16 职场文书
授权委托书样本及填写说明
2014/09/19 职场文书
党员群众路线剖析材料
2014/10/08 职场文书
新郎结婚感言
2015/07/31 职场文书
2016年猴年新春致辞
2015/08/01 职场文书
《多彩的民间艺术》教学反思
2016/02/16 职场文书
2019年作为一名实习生的述职报告
2019/09/29 职场文书
Django drf请求模块源码解析
2021/06/08 Python
详解PyTorch模型保存与加载
2022/04/28 Python