You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何批量处理文件夹中的docx文件,提取表格并生成对应csv文件?

批量处理DOCX文件提取表格并导出CSV

你完全可以通过编写函数实现批量处理,以下是完整的实现代码,整合你已有的逻辑并适配批量场景:

import os
from docx import Document
import pandas as pd

def batch_docx_to_csv(source_dir, output_dir=None):
    # 如果未指定输出目录,默认和源文件同目录
    if output_dir is None:
        output_dir = source_dir
    # 创建输出目录(如果不存在)
    os.makedirs(output_dir, exist_ok=True)
    
    # 遍历源目录下的所有文件
    for filename in os.listdir(source_dir):
        # 只处理docx文件
        if filename.lower().endswith('.docx'):
            # 构建完整的文件路径
            docx_path = os.path.join(source_dir, filename)
            try:
                # 读取docx文件并提取第一个表格
                doc = Document(docx_path)
                if not doc.tables:
                    print(f"警告:{filename} 中未找到表格,跳过")
                    continue
                # 提取表格数据
                table_data = [[cell.text for cell in row.cells] for row in doc.tables[0].rows]
                # 转换为DataFrame
                df = pd.DataFrame(table_data)
                # 生成CSV文件名(替换docx后缀为csv)
                csv_filename = os.path.splitext(filename)[0] + '.csv'
                csv_path = os.path.join(output_dir, csv_filename)
                # 导出为CSV
                df.to_csv(csv_path, index=False, encoding='utf-8-sig')
                print(f"已处理:{filename} -> {csv_filename}")
            except Exception as e:
                print(f"处理{filename}时出错:{str(e)}")

# 示例调用
source_path = "/Users/cristobalmino/Desktop/3_ENTREGA DE TURNOS MEDICA/Entrega Turno UCI/2022/1. Enero 2022/"
# 如果想把CSV输出到单独目录,比如创建一个csv_output文件夹
# output_path = os.path.join(source_path, "csv_output")
# batch_docx_to_csv(source_path, output_path)
# 不指定输出目录则默认存在源文件同目录
batch_docx_to_csv(source_path)

关键说明:

  • 路径处理:用os.path.join拼接路径,避免因操作系统差异导致的路径错误
  • 文件过滤:通过.lower().endswith('.docx')确保只处理DOCX文件,忽略大小写和其他格式文件
  • 异常处理:加入try-except捕获读取或转换过程中的错误,避免单个文件问题导致整个批量任务中断
  • 输出灵活:可指定单独的输出目录,也可默认和源文件同目录
  • 容错处理:检查文件中是否存在表格,避免无表格文件引发报错

内容的提问来源于stack exchange,提问作者Cristóbal Miño Morales

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.06 08:05:34