这里要处理的问题:
收到了好多读书心得的投稿,需要统计其中的学生信息,包括姓名,学号,班级等等

(如果你也有这种工作,建议使用问卷统计信息和问卷附件提交文件的形式来做这个活动,会更加简单省事,我这也是没办法了,只能自己再处理了)

处理步骤:

1. 获取文件夹下所有docx 文件的文件名
2. 读取docx 文件中表格的文本
3. 创建 xls文件把需要的信息保存到文件中

代码:

from docx import Document
import xlwt
import os
#获取文件夹下的所有 docx 后缀的文件名
file_dir = '/Users/thrive/Downloads'
#得到包含所有文件名的变量
filenametemp=[]
for parent, dirnames, filenames in os.walk(file_dir):filenametemp.append(filenames)
#获取后缀是 docx 的文件名
filename=[]
for file in filenametemp[0]:if str(file).endswith('docx'): filename.append(file)
print(len(filename))#看一下一共获取了多少个文件
print(filename[0])#看一下变量中的第一个文件名

输出看一下:有 92 个文件,变量中的第一个文件名是 xxx

#创建一个 excel 文件写入想要的信息
workbook = xlwt.Workbook(encoding='utf-8')
sheet1 = workbook.add_sheet('sheet1',cell_overwrite_ok=True)#给excel文件添加sheet
n=0   #初始化要加入到表格的行
#逐个读取文件开始操作
for file in filename:doc = Document('/Users/thrive/Downloads/'+file)tbs = doc.tables#获取全部表格if len(tbs)==0:#有的文件格式不正确,读取不到表格,找到他们print(file)else:#对格式正确的文件进行处理# method 1text1=[]table = tbs[0]#第一个表格就是我们要的#按行获取文本内容row_num = len(table.rows)for i in range(row_num):rowtemp=table.rows[i]row_string = [cell.text for cell in rowtemp.cells]text1.append(row_string)# save into xlsxsheet1.write(n,0,text1[0][1])#namesheet1.write(n,1,text1[1][1])#classsheet1.write(n,2,text1[0][5])#student numbersheet1.write(n,3,text1[1][5])#college 1sheet1.write(n,4,text1[1][3])#college 2sheet1.write(n,5,text1[3][1])#book namen=n+1workbook.save('test.xls')

输出结果: xls 文件
另外显示有五个人的文件里边是没有表格的,没有按规定提交

到这已经可以了,多说一点,对于 docx 中表格内容的读取还可以这样操作:

# method 2
text2=[]
for tb in tbs:for row in tb.rows: for cell in row.cells:text2.append(cell.text)
print(text2[0])

结果:

祝你工作顺利,学业进步

Python 处理统计多个 Word docx 表格中的文字信息到Excel xls 文件中相关推荐

  1. python批量提取word指定内容_使用python批量读取word文档并整理关键信息到excel表格的实例...

    目标 最近实验室里成立了一个计算机兴趣小组 倡议大家多把自己解决问题的经验记录并分享 就像在CSDN写博客一样 虽然刚刚起步 但考虑到后面此类经验记录的资料会越来越多 所以一开始就要做好模板设计(如下 ...

  2. python文件读取方法read(size)的含义是_在Python中可使用read([size])来读取文件中的数据,如果参数size省略,则读取文件中的()。...

    [单选题]李明在他所属的公司工作五年,每天都很认真地处理繁杂的事情,同事们都夸他认真,但是依然没有建树,这是因为: [多选题]品牌标志的作用表现在 [单选题]新产品开发的第一个阶段是_______. ...

  3. python excel处理框架_django框架基于模板 生成 excel(xls) 文件操作示例

    本文实例讲述了django框架基于模板 生成 excel(xls) 文件操作.分享给大家供大家参考,具体如下: 生成Excel 文件,很多人会采用一些开源的库来实现,比如python 自带 csv 库 ...

  4. python输出日志文件_python将print输出的信息保留到日志文件中

    具体代码如下所示: import sys import os import sys import io import datetime def create_detail_day(): ''' :re ...

  5. python文件读取方法read(size)的含义是_在Python中可使用read([size])来读取文件中的数据,如果参数size省略,则读取文件中的()。(4.0分)_学小易找答案...

    [单选题]文本文件存储的是(),由若干文本行组成,通常每行以换行符 '\n' 结尾.(4.0分) [单选题]()属性是返回被打开文件的访问模式.(4.0分) [单选题]重力坝是由砼或( )修筑而成的大 ...

  6. 如何快速搜索多个word、excel等文件中内容

    如何快速搜索多个word.excel等文件中内容 一.问题背景 很多同事都会搜索word.exce1等文件中的内容,但是如果现在有100个word文件,分散在多个文件夹,而想找到这100个word文件 ...

  7. 【用JS自制表格软件玩数据】2.读取 xls 文件

    读写Excel Excel文档的包结构 Excel文档的组织形式 Content Types 主要内容(worksheet) 关联(Relationships) 第三方库 SheetJS 工作原理介绍 ...

  8. python批量提取word指定内容到excel_(转)用python批量读取word文档并整理关键信息到excel表格...

    目标 最近实验室里成立了一个计算机兴趣小组 倡议大家多把自己解决问题的经验记录并分享 就像在CSDN写博客一样 虽然刚刚起步 但考虑到后面此类经验记录的资料会越来越多 所以一开始就要做好模板设计(如下 ...

  9. python提取pdf表格数据_Python骚操作,提取pdf文件中的表格数据!

    在实际研究中,我们经常需要获取大量数据,而这些数据很大一部分以pdf表格的形式呈现,如公司年报.发行上市公告等.面对如此多的数据表格,采用手工复制黏贴的方式显然并不可取.那么如何才能高效提取出pdf文 ...

最新文章

  1. linux g 手动安装,linux上oracle11g 手动安装
  2. 十一.python面向对象(接口)abstractmethod,ABCMeta
  3. nagios 监控shell脚本
  4. 人生苦短,Let's Go!
  5. ZZULIOJ 1058: 求解不等式
  6. 1 D触发器verilog与Systemverilog编码
  7. centos7登陆mysql_Centos7安装Myql8.0并授权登录
  8. LW_OOPC介绍(转载)
  9. tcpdf html table,TCPDF: HTML table and page breaks
  10. MQTT X Web:在线的 MQTT 5.0 客户端工具
  11. html设置编剧,编剧必备之电影剧本创作六大基本步骤
  12. 无法找到c语言dll入口点,c# – 无法在DLL中找到入口点
  13. PyG快速安装(一键脚本,2021.7.14简单有效)
  14. python电脑基础_python基础-1.计算机基础
  15. 2019小结,期待2020
  16. 赶紧收藏,影视剪辑月赚6000多,常用的素材和工具分享
  17. 浅谈Flutter跨平台调用方式MethodChannel
  18. 计算机网络学习笔记(一) 计算机网络及互联网 Chapter1-Computer NetWorks and the Internet
  19. 网易云课堂学习-TCP/UDP协议
  20. 攻防世界easy_web

热门文章

  1. 教你在Ubuntu下安装AVG杀毒
  2. 神州数码思特奇(太原)笔试
  3. 《欢乐颂》教会我们的10个道理
  4. 后端开发—10个小技巧教你保证线程安全
  5. 四川省教育局2021高考成绩查询,四川2021年高考改革?教育厅回应:基础条件和方案尚未成熟...
  6. DPDK分析学习之全网唯一的DPDK教学课程丨虚拟化高性能专家之路
  7. Alamofire请求如何添加httpBody
  8. 项目管理学习总结(9)——史上最全互联网八大技术岗位详解
  9. 项目实践(一)点餐系统概述
  10. html js涨幅率怎么计算,JS加速线指标的计算公式及买卖分析