一.项目背景
日常工作中,我们不免会遇到接收大量相似的word文档,并需要把这些文档中的数
据提取到Excel表中。例如,提取word文档中的财务数据、考勤数据等,将数据存储到
Excel表中,本次项目我们专门针对word文档中的表格数据进行解析与提取。
原始数据文件(word文档)
word文档内容
本次我们的目标是提取表格列名称和人数这一行,最后存储为Excel文件。
目标Excel文件
二.实现步骤
import pandas as pd
import docx
import os
#提取word文档表格
def DocParsing(path_para):
#获取文件列表
file_list = os.listdir(path_para)
#创建存储所有数据的列表
list_combine = []
#遍历word文件列表
for file in file_list:
#读取word文档
doc = docx.Document(path_para + '/' + file)
#创建存储单个word文档数据的列表,key存储值,col存储列名称
key, col = [], []
#获取word文档的表格
tb = doc.tables[0]
#row_index 表示表格的行数
row_index=0
#遍历表格的行
for row in tb.rows:
#记录行数
row_index += 1
#不提取占比这行
if row_index == 3:
continue
else:
#遍历每行的单元格
for cell in row.cells:
text = ""
#解析每一个单元格的数据
for p in cell.paragraphs:
text += p.text
#提取列名称
if row_index == 1 :
#提取人数数据
col.append(text)
else:
key.append(text)
#修改列表'col'的第一个元素为‘部门’
col[0] = '部门'
#修改列表‘key’的第一个元素为具体部门名称
key[0] = file[4:16]
#将提取的数据转化为单行DataFrame对象
data = pd.DataFrame({i: j for i, j in zip(col, key)}, index=[0])
print(data)
#将DataFrame对象存储到列表
list_combine.append(data)
#合并数据并重建索引
df = pd.concat(list_combine, ignore_index=True)
#输出数据
print(df)
#保存数据为Excel文件
df.to_excel('考勤汇总表.xlsx')
DocParsing('./task/')
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
数据
+关注
关注
8文章
6884浏览量
88812 -
word
+关注
关注
1文章
78浏览量
21906 -
Excel
+关注
关注
4文章
218浏览量
55447
发布评论请先 登录
相关推荐
LabVIEW读取EXCEL中的数据并复制到Word中生存报表
版本是2012的,而且用到MS报表生成工具包 否则没法正常打开抛砖引玉,做的简单 需要的话可根据自己的要求扩展程序对于一些保存在EXCEL中的数据,有时候需要做成word形式的表格以便
发表于 03-30 22:07
labview如何将图片粘贴到word或者excel里
现在能生成图片进入剪切板,请问有什么办法可以粘贴到指定的word或者excel文件里?或者能够实现将多个图片保存到word里也行,求高手指点
发表于 09-11 16:07
labview 自动保存到excel 的的程序 打包成exe ,会有问题
labview自动保存到excel 的的程序 打包成exe会出现无法保存到excel 的 问题 ,请问大家遇到过同样的问题没
发表于 07-09 14:42
面板怎么保存到两个excel电子表格中
有没有人见过这个问题? - 在我的程序结束时,我有两个面板,我想保存到两个excel电子表格中。我打开一个电子表格,保存适当的图像然后关闭该
发表于 10-25 11:08
串口数据保存到excel 换列
我从串口每次读1024个保存到excel 的第一列中,再读1024个数保存到第二列,要怎么可以实现 ,我之前的是只保存到某一列的,可以增加行,不知道怎么加列。
发表于 11-21 16:24
Microsoft Office Word、Excel 和
采用 Microsoft Office Word、Excel 和 PowerPoint 2007 新增的文件格式打开、编辑和保存文档、工作簿和演示文稿。
Microsoft Office XP 和 2003 系统
发表于 02-12 08:45
•165次下载
Office Word、Excel和PowerPoint 文
打开、编辑和保存采用从 Office 2007 开始引入到 Microsoft Office Word、Excel 和 PowerPoint 中的 Open XML 文件格式的文档、工
发表于 07-06 00:14
•238次下载
word表格小技巧
word表格小技巧
一、快速插入表格
拖动“插入表格”能插入的最大表格跟该图标位置、显示分辨率有关。如使用800×600分辨率时最
发表于 01-08 09:56
•1565次阅读
如何使用labview读写word模板表格的内容
本文档的主要内容详细介绍的是使用labview通过书签的方式写入word模板表格,读出word表格中的内容(没有用书签方式读出)。
发表于 10-22 08:00
•99次下载
如何从Word、PPT或Excel等提取所有图片并保存在其他地方?
如果一个Word、PPT或者Excel文档里面,有很多图片,要怎么样才能把里面的图片全部保存到另外的地方?
labview向Word和Excel模板中写数据
压缩包内为VI源码,2018labview,向Word和Excel模板中写数据,Word模板文档必须设置书签,Excel在vi中指定单元格位
发表于 05-17 11:51
•36次下载
评论