批量复制提取Word中所有的表格到Excel(Python办公自动化)
import docx
import os
from win32com import client as wc
import pandas as pdword_paths = os.getcwd()# doc 转化为 docx,如果不用该方法则打不开对应的docx
def convertdoc_docx(path):#将path下所有的doc转换为有效的docxpath_list = os.listdir(path)doc_list = [os.path.join(path, str(i))for i in path_list if str(i).endswith('doc')]word = wc.Dispatch('Word.Application')for path in doc_list:print(path)save_path = str(path).replace('doc', 'docx')doc = word.Documents.Open(path)doc.SaveAs(save_path, 12, False, "", True,"", False, False, False, False)doc.Close()print('{} Save sucessfully '.format(save_path))word.Quit()def docx2dataframe(filepath) -> pd.DataFrame:# 将一个docx的文件路径传入,发挥一个Dataframe,便于导出doc = docx.Document(filepath)# print(len(doc.tables)) # 检查表格数量是否在一个合理范围for index, table in enumerate(doc.tables):df = [['' for i in range(len(table.columns))]for j in range(len(table.rows))]try:for i, row in enumerate(table.rows):for j, cell in enumerate(row.cells):if cell.text:df[i][j] = cell.textreturn pd.DataFrame(df)except:pass # 出错的是少量,手动添加即可if __name__ == "__main__":convertdoc_docx(word_paths) # 这个函数调用将当前文件夹下所有的doc文件转为docxexcel_writer = pd.ExcelWriter('target.xlsx') # 创建目标excel文件docx_list = [os.path.join(word_paths, i) for i in os.listdir(word_paths) if str(i).endswith('.docx')] # docx文件路径列表for index, docx_file in enumerate(docx_list):docx2dataframe(docx_file).to_excel(excel_writer=excel_writer, sheet_name=f'sheet{index}', index=False)excel_writer.save() # 每次读完保存一下print('\r' + str(index), end='') # 查看进度excel_writer.close()
批量复制提取Word中所有的表格到Excel(Python办公自动化)相关推荐
- word录入表单数据 java 导入系统,java导入excel | 怎么把excel中的数据批量导入到word中的表格中...
用javascript怎么实现把excel中的数据批量导入到数据库表中 这个js不能直接实现吧 我们程序用到 先读取excel内容转换成数组 然后放到页面上 再提交表单 储存 MySql如何批量添加数 ...
- 批量提取Word中的图片
我在写学习笔记的时候喜欢用word或Evernote直接排版做笔记,好处是快速方便,直接截图插入.但是再刊载在CSND上的时候就有麻烦了,因为不能直接粘贴图片,只能上传到相册中再选取.这时我又不愿意一 ...
- matlab如何在word中插入多个表格,怎么把excel中的数据批量导入到word中的表格中《不同表格间的数据导入》...
如何将excel表格中大量数据导入matlab中并作图 工具:MATLAB.office excel 将待导入的矩阵结构据录入Excel中,录入时注意行列原矩阵一一对应. 录入完以后保存数据,为了后续 ...
- 关于自动化提取word中表格信息的方法
关于自动化提取word中表格信息的方法 最近工作中需要提取word中表格的特定信息,采用python写了一个小的脚本,留在此处供大家参考. import docxdata = docx.Documen ...
- Excel表格转到Word中,保持表格不变形,不超边缘纸张范围
Excel表格转到Word中,保持表格不变形,不超边缘纸张范围 目录 Excel表格转到Word中,表格不超边缘纸张范围 1.Excel表格复制到Word中,边缘竟然超出了纸张范围怎么办? 2.选中E ...
- java提取word中的文字_Java 提取Word中的文本和图片
本文将介绍通过Java来提取或读取Word文档中文本和图片的方法.这里提取文本和图片包括同时提取文档正文当中以及页眉.页脚中的的文本和图片. 使用工具:Free Spire.Doc for Java ...
- 删除word中所有的表格_如何在Word中删除表格
删除word中所有的表格 If you've inserted a table in Word and you now want to delete it, you may have found it ...
- c# 获取word表格中的内容_Java 在Word中创建嵌套表格
嵌套表格,即在一个大的表格单元格中再嵌进去一个或几个小的表格,使表格内容布局合理.本文将通过java程序来演示如何在Word中创建嵌套表格. 使用工具:Free Spire.Doc for Java ...
- 【记录】解决visio流程图复制到word中字符间距改变的问题
原回答:This definitely looks like a bug. I solved the problem by selecting the objects I wanted in Visi ...
最新文章
- App自动化元素定位不到?别慌,3大工具帮你解决
- JCheckbox全选
- 若依前后端分离集成Mybatis-Plus
- winxp计算机远程桌面连接,winxp系统远程桌面不能连接指定计算机的解决方法
- 比较JSF、Spring MVC、Stripes、Struts 2、Tapestry、Wicket
- 将当前登录用户去重显示。
- [LeetCode] One Edit Distance 一个编辑距离
- 刘永行:领导者的得与失
- png转iconfont_IconFont|阿里巴巴矢量图标库
- MySQL数据库简单使用
- Flutter CustomPainter实现半圆形饼图
- 记第三期“晋IT”分享成长沙龙
- 50套电子看板,数据大屏设计,数据展示模板,大屏可视化,大数据分析平台,ui设计模板
- linux博通网卡驱动怎么安装,ubuntu14.04手动安装博通官方无线网卡驱动时报错,...
- (四)JMockit 的API:@Injectable 与 @Mocked的不同--基础篇
- 最强大的Mac软件卸载清理工具 App Cleaner Uninstaller Pro 7.8 Mac版(内附安装包链接)
- P1719 最大加权矩形(二维dp)
- 「 神器 」绝不简单的截图神器
- 板子ping不通主机
- 用python实现随机生成银行卡号,输出卡号和密码信息