问题描述
是否有任何工具可以从word文档中提取所有表格并使用python或vba将它们转换为csv文件或任何excel扩展文件
请注意,word 文件包含文本和表格。
解决方法
您可以将 pandas
与 python-docx
一起使用。根据 this 答案,您可以从文档中提取所有表格并将它们放入列表中:
from docx import Document
import pandas as pd
document = Document('test.docx')
tables = []
for table in document.tables:
df = [['' for i in range(len(table.columns))] for j in range(len(table.rows))]
for i,row in enumerate(table.rows):
for j,cell in enumerate(row.cells):
if cell.text:
df[i][j] = cell.text
tables.append(pd.DataFrame(df))
然后您可以通过遍历列表将表保存到 csv 文件:
for nr,i in enumerate(tables):
i.to_csv("table_" + str(nr) + ".csv")