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办公自动化)相关推荐

  1. word录入表单数据 java 导入系统,java导入excel | 怎么把excel中的数据批量导入到word中的表格中...

    用javascript怎么实现把excel中的数据批量导入到数据库表中 这个js不能直接实现吧 我们程序用到 先读取excel内容转换成数组 然后放到页面上 再提交表单 储存 MySql如何批量添加数 ...

  2. 批量提取Word中的图片

    我在写学习笔记的时候喜欢用word或Evernote直接排版做笔记,好处是快速方便,直接截图插入.但是再刊载在CSND上的时候就有麻烦了,因为不能直接粘贴图片,只能上传到相册中再选取.这时我又不愿意一 ...

  3. matlab如何在word中插入多个表格,怎么把excel中的数据批量导入到word中的表格中《不同表格间的数据导入》...

    如何将excel表格中大量数据导入matlab中并作图 工具:MATLAB.office excel 将待导入的矩阵结构据录入Excel中,录入时注意行列原矩阵一一对应. 录入完以后保存数据,为了后续 ...

  4. 关于自动化提取word中表格信息的方法

    关于自动化提取word中表格信息的方法 最近工作中需要提取word中表格的特定信息,采用python写了一个小的脚本,留在此处供大家参考. import docxdata = docx.Documen ...

  5. Excel表格转到Word中,保持表格不变形,不超边缘纸张范围

    Excel表格转到Word中,保持表格不变形,不超边缘纸张范围 目录 Excel表格转到Word中,表格不超边缘纸张范围 1.Excel表格复制到Word中,边缘竟然超出了纸张范围怎么办? 2.选中E ...

  6. java提取word中的文字_Java 提取Word中的文本和图片

    本文将介绍通过Java来提取或读取Word文档中文本和图片的方法.这里提取文本和图片包括同时提取文档正文当中以及页眉.页脚中的的文本和图片. 使用工具:Free Spire.Doc for Java ...

  7. 删除word中所有的表格_如何在Word中删除表格

    删除word中所有的表格 If you've inserted a table in Word and you now want to delete it, you may have found it ...

  8. c# 获取word表格中的内容_Java 在Word中创建嵌套表格

    嵌套表格,即在一个大的表格单元格中再嵌进去一个或几个小的表格,使表格内容布局合理.本文将通过java程序来演示如何在Word中创建嵌套表格. 使用工具:Free Spire.Doc for Java ...

  9. 【记录】解决visio流程图复制到word中字符间距改变的问题

    原回答:This definitely looks like a bug. I solved the problem by selecting the objects I wanted in Visi ...

最新文章

  1. App自动化元素定位不到?别慌,3大工具帮你解决
  2. JCheckbox全选
  3. 若依前后端分离集成Mybatis-Plus
  4. winxp计算机远程桌面连接,winxp系统远程桌面不能连接指定计算机的解决方法
  5. 比较JSF、Spring MVC、Stripes、Struts 2、Tapestry、Wicket
  6. 将当前登录用户去重显示。
  7. [LeetCode] One Edit Distance 一个编辑距离
  8. 刘永行:领导者的得与失
  9. png转iconfont_IconFont|阿里巴巴矢量图标库
  10. MySQL数据库简单使用
  11. Flutter CustomPainter实现半圆形饼图
  12. 记第三期“晋IT”分享成长沙龙
  13. 50套电子看板,数据大屏设计,数据展示模板,大屏可视化,大数据分析平台,ui设计模板
  14. linux博通网卡驱动怎么安装,ubuntu14.04手动安装博通官方无线网卡驱动时报错,...
  15. (四)JMockit 的API:@Injectable 与 @Mocked的不同--基础篇
  16. 最强大的Mac软件卸载清理工具 App Cleaner Uninstaller Pro 7.8 Mac版(内附安装包链接)
  17. P1719 最大加权矩形(二维dp)
  18. 「 神器 」绝不简单的截图神器
  19. 板子ping不通主机
  20. 用python实现随机生成银行卡号,输出卡号和密码信息

热门文章

  1. C++程序启动时报“0xC000007B”无法启动的问题排查
  2. 分块算法板子luogu1903
  3. 大数据技术之 Linux 基础
  4. 51单片机,点亮LED灯和闪烁
  5. JS开发HTML5游戏《神奇的六边形》(四)
  6. python爬虫-爬取股票贴吧帖子
  7. tzset函数与locatime时间函数的关系
  8. c语言字符数组自动填充,数组在C中自动填充
  9. ensp中路由器(华为设备)的基本使用
  10. 如何配置java环境_vscode配置java环境