python能打开word文档吗
首先下载安装win32comfrom win32com import client as wcword = 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 = 0wdFormatDocument97 = 0wdFormatDocumentDefault = 16wdFormatDOSText = 4wdFormatDOSTextLineBreaks = 5wdFormatEncodedText = 7wdFormatFilteredHTML = 10wdFormatFlatXML = 19wdFormatFlatXMLMacroEnabled = 20wdFormatFlatXMLTemplate = 21wdFormatFlatXMLTemplateMacroEnabled = 22wdFormatHTML = 8wdFormatPDF = 17wdFormatRTF = 6wdFormatTemplate = 1wdFormatTemplate97 = 1wdFormatText = 2wdFormatTextLineBreaks = 3wdFormatUnicodeText = 7wdFormatWebArchive = 9wdFormatXML = 11wdFormatXMLDocument = 12wdFormatXMLDocumentMacroEnabled = 13wdFormatXMLTemplate = 14wdFormatXMLTemplateMacroEnabled = 15wdFormatXPS = 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 wcword = wc.Dispatch('Word.Application')doc = word.Documents.Open(r'c:/test1.doc')doc.SaveAs('c:/test1.text', 4)doc.Close()import restrings=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如何获取word文件中某个关键字之后的表格
最好是全部都读取到程序中,在程序中进行判断。
本文实例讲述了Python实现批量读取word中表格信息的方法。
分享给大家供大家参考。
具体如下:单位收集了很多word格式的调查表,领导需要收集表单里的信息,我就把所有调查表放一个文件里,写了个python小程序把所需的信息打印出来#coding:utf-8import osimport win32comfrom win32com.client import Dispatch, constantsfrom docx import Documentdef parse_doc(f):"""读取doc,返回姓名和行业"""doc = w.Documents.Open( FileName = f )t = doc.Tables[0] # 根据文件中的图表选择信息name = t.Rows[0].Cells[1].Range.Textsituation = t.Rows[0].Cells[5].Range.Textpeople = t.Rows[1].Cells[1].Range.Texttitle = t.Rows[1].Cells[3].Range.Textprint name, situation, people,titledoc.Close()def parse_docx(f):"""读取docx,返回姓名和行业"""d = Document(f)t = d.tables[0]name = t.cell(0,1).textsituation = t.cell(0,8).textpeople = t.cell(1,2).texttitle = t.cell(1,8).textprint name, situation, people,titleif __name__ == "__main__":w = win32com.client.Dispatch('Word.Application')# 遍历文件PATH = "H:\work\\aaa" # windows文件路径doc_files = os.listdir(PATH)for doc in doc_files:if os.path.splitext(doc)[1] == '.docx':try:parse_docx(PATH+'\\'+doc)except Exception as e:print eelif os.path.splitext(doc)[1] == '.doc':try:parse_doc(PATH+'\\'+doc)except Exception as e:print e希望本文所述对大家的Python程序设计有所帮助。
python中,读取文件,希望转化为列表的格式,出现了问题
python 读取文本文件内容转化为python的list列表,案例如下:1、目的读取cal.txt内容,然后通过python脚本转化为list内容2、文件内容cal.txt12131415163、Python编写cal.py脚本内容#!/usr/bin/python#coding = UFT-8result=[]fd = file( "cal.txt", "r" )for line in fd.readlines(): result.append(list(map(int,line.split(','))))print(result)for item in result: for it in item: print it4、执行转换为List列表结果内容:[[12], [13], [14], [15], [16]]1213141516
如何在 Linux 上使用 Python 读取 word 文件信息
使用Python的内部方法open()读取文本文件 try: f=open('/file','r') print(f.read())finally: if f: f.close()如果读取word文档推荐使用第三方插件,python-docx 可以在官网上下载 使用方式 # -*- coding: cp936 -*-import docxdocument = docx.Document(文件路径)docText = '\n\n'.join([ paragraph.text.encode('utf-8') for paragraph in document.paragraphs])print docText...
转载请注明出处51数据库 » python 读取word 格式
一海洋一