很久之前写了一篇文章,是把excel内的数据放入word的模板当中批量生成新的word文件,今天碰到一个需求是要从大量的word模板中的表格提取信息,放入excel中,这次运气很好,拜读了大佬的文章,简单修改一下直接运行解决问题。
和上次一样Python只是支持docx格式的word
import docx
import os
import xlwt
from docx import Document #导入库
rootdir ='你word所在目录'
list = os.listdir(rootdir) #列出文件夹下所有的目录与文件
f = xlwt.Workbook()#创建工作簿
sheet1 = f.add_sheet(u'sheet1',cell_overwrite_ok=True) #创建sheet
for i in range(0,len(list)):
path = os.path.join(rootdir,list[i])
if os.path.isfile(path): #如果是文件夹就继续打开
document = Document(path) #读入文件
tables = document.tables #获取文件中的表格集
table = tables[0]#获取文件中的第一个表格
name = table.cell(1,1).text #cell( ) 这是表格里面单元格的位置
bumen = table.cell(2,4).text
tel = table.cell(2,2).text
zcid = table.cell(6,1).text
data=[] #创建一个空列表,用append将表格里取出的数据加入到这个列表
data.append(Document(path).paragraphs[1].text) #这里是读取了word中的第一段的内容
data.append(bumen)
data.append(name)
data.append(tel)
data.append(zcid)
l_=range(len(data))
x = data
for j in l_:
sheet1.write(i+1,j,x[j]) #第一个是写入哪一行,第二个写入参数的列, 第三个是要写入的数据
f.save("数据.xls")#保存文件
版权声明:本文为CSDN博主「qq_41758228」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_41758228/article/details/80999344
网友评论