python-docx:将表解析为 Panda Dataframe

Ali*_*sad 4 python ms-word dataframe pandas python-docx

我正在使用该python-docx库来提取 ms word 文档。我可以使用相同的库从 word 文档中获取所有表格。但是,我想将表解析为熊猫数据框,是否有任何内置功能可用于将表解析为数据框,或者我必须手动执行此操作?另外,是否有可能知道表格所在的标题名称?谢谢

from docx import Document
from docx.shared import Inches
document = Document('test.docx')

tabs = document.tables
Run Code Online (Sandbox Code Playgroud)

小智 10

You can extract tables from the document in data-frame by using this code :

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))
print(tables)
Run Code Online (Sandbox Code Playgroud)

You can get all the tables from the tables variable.