最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python讀取word文檔的方法

 更新時(shí)間:2015年05月09日 12:15:54   作者:守株待兔  
這篇文章主要介紹了python讀取word文檔的方法,實(shí)例分析了Python基于win32com操作word文檔的相關(guān)技巧,需要的朋友可以參考下

本文實(shí)例講述了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()

這種方式產(chǎn)生的text文檔,不能用python用普通的r方式讀取,為了讓python可以用r方式讀取,應(yīng)當(dāng)寫成

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

注意:系統(tǒng)執(zhí)行完成后,會(huì)自動(dòng)產(chǎn)生文件后綴txt(雖然沒有指明后綴)。
在xp系統(tǒng)下面,應(yīng)當(dāng),

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

照著字面意思應(yīng)該能對(duì)應(yīng)到相應(yīng)的文件格式,如果你是office 2003可能支持不了這么多格式。word文件轉(zhuǎn)html有兩種格式可選wdFormatHTML、wdFormatFilteredHTML(對(duì)應(yīng)數(shù)字 8、10),區(qū)別是如果是wdFormatHTML格式的話,word文件里面的公式等ole對(duì)象將會(huì)存儲(chǔ)成wmf格式,而選用 wdFormatFilteredHTML的話公式圖片將存儲(chǔ)為gif格式,而且目測可以看出用wdFormatFilteredHTML生成的HTML 明顯比wdFormatHTML要干凈許多。

當(dāng)然你也可以用任意一種語言通過com來調(diào)用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)
#不要(),容易引起歧義。

希望本文所述對(duì)大家的Python程序設(shè)計(jì)有所幫助。

相關(guān)文章

最新評(píng)論

山西省| 乐山市| 琼结县| 赤水市| 抚宁县| 珲春市| 西充县| 隆子县| 西吉县| 洪洞县| 彩票| 广丰县| 区。| 砚山县| 桐梓县| 蒙阴县| 乡宁县| 天柱县| 六盘水市| 辽宁省| 灵台县| 肥乡县| 桃江县| 梅河口市| 灵台县| 义马市| 通道| 洪江市| 昌平区| 扶风县| 达拉特旗| 汽车| 绥滨县| 黄大仙区| 茌平县| 双鸭山市| 南郑县| 土默特左旗| 兴义市| 张家口市| 当涂县|