Python实现批量读取word中表格信息的方法
本文实例讲述了Python实现批量读取word中表格信息的方法。分享给大家供大家参考。具体如下:
单位收集了很多word格式的调查表,领导需要收集表单里的信息,我就把所有调查表放一个文件里,写了个python小程序把所需的信息打印出来
#coding:utf-8
importos
importwin32com
fromwin32com.clientimportDispatch,constants
fromdocximportDocument
defparse_doc(f):
"""读取doc,返回姓名和行业
"""
doc=w.Documents.Open(FileName=f)
t=doc.Tables[0]#根据文件中的图表选择信息
name=t.Rows[0].Cells[1].Range.Text
situation=t.Rows[0].Cells[5].Range.Text
people=t.Rows[1].Cells[1].Range.Text
title=t.Rows[1].Cells[3].Range.Text
printname,situation,people,title
doc.Close()
defparse_docx(f):
"""读取docx,返回姓名和行业
"""
d=Document(f)
t=d.tables[0]
name=t.cell(0,1).text
situation=t.cell(0,8).text
people=t.cell(1,2).text
title=t.cell(1,8).text
printname,situation,people,title
if__name__=="__main__":
w=win32com.client.Dispatch('Word.Application')
#遍历文件
PATH="H:\work\\aaa"#windows文件路径
doc_files=os.listdir(PATH)
fordocindoc_files:
ifos.path.splitext(doc)[1]=='.docx':
try:
parse_docx(PATH+'\\'+doc)
exceptExceptionase:
printe
elifos.path.splitext(doc)[1]=='.doc':
try:
parse_doc(PATH+'\\'+doc)
exceptExceptionase:
printe
希望本文所述对大家的Python程序设计有所帮助。