AI办公自动化:批量将多个word文档中的表格提取并合并

2024-07-31 16:32:59 浏览数 (3)

有多个word文档,里面都是表格,要将其表格都提取出来,然后合并成一个。

在deepseek中输入提示词:

写一个Python脚本,完成批量提取word文档中表格的任务,具体步骤如下:

打开文件夹:D:360AI浏览器下载 ;

读取里面所有的word文档;

将所有word文档中的表格复制到一个Excel文件中,合并成一个表格;

Excel文件名称为:AI算法备案列表20240718.xlsx,保存在文件夹:D:360AI浏览器下载

注意:每一步都要输出信息到屏幕上

源代码:

import os

import docx

import pandas as pd

def extract_tables_from_word(file_path):

doc = docx.Document(file_path)

tables = []

for table in doc.tables:

data = []

for row in table.rows:

row_data = []

for cell in row.cells:

row_data.append(cell.text)

data.append(row_data)

tables.append(data)

return tables

def main():

input_folder = r'D:360AI浏览器下载'

output_file = os.path.join(input_folder, 'AI算法备案列表20240718.xlsx')

all_tables = []

for file_name in os.listdir(input_folder):

if file_name.endswith('.docx'):

file_path = os.path.join(input_folder, file_name)

print(f"Processing file: {file_path}")

tables = extract_tables_from_word(file_path)

all_tables.extend(tables)

if all_tables:

df = pd.DataFrame()

for i, table in enumerate(all_tables):

temp_df = pd.DataFrame(table)

df = pd.concat([df, temp_df], ignore_index=True)

print(f"Saving to Excel file: {output_file}")

df.to_excel(output_file, index=False, header=False)

else:

print("No tables found in the Word documents.")

if __name__ == "__main__":

main()

在vscode中运行这个python程序,成功合并:

0 人点赞