【python】如何将文件夹及其子文件夹下的所有word文件汇总导出到一个excel文件里?

python 读取word 表格,写入excel 以上word表格汇总为下面的EXCEL表格 用到两个模块,docx,openpyxl 也可以写到csv文件,不过csv文件过长的数字文本会自动转科学计数 excel文件,内容没有转成数字,是默认插入的文本,如果加入判断语句又会有点麻烦,所以可以生成表格后,再手动打开转一下文本为数字。 import docx import os from openpyxl import Work... 阅读详情

根据你的需求,这里提供一套完整的Python解决方案,支持递归遍历子文件夹、提取Word文档内容(段落+表格),并整合到Excel中。以下是代码实现及详细说明:

一个单元格一个word的全部内容


完整代码

# -*- coding: utf-8 -*-
import os
from docx import Document
import pandas as pd
from tqdm import tqdm  # 需安装:pip install tqdm

def extract_word_content(doc_path):
    """提取Word文档中的段落和表格内容"""
    try:
        doc = Document(doc_path)
        content = []
        # 提取段落文本
        for para in doc.paragraphs:
            if para.text.strip():
                content.append(('paragraph', para.text))
        # 提取表格内容(按行合并)
        for table in doc.tables:
            for row in table.rows:
                row_text = ' | '.join([cell.text.strip() for cell in row.cells])
                content.append(('table_row', row_text))
        return '\n'.join([f"[{
     
     type}] {
     
     text}" for type, text in content])
    except Exception as e:
        return f"Error reading file: {
     
     str(e)}"

def process_folder(root_folder):
    """遍历文件夹并提取所有Word文档"""
    data = []
    # 遍历所有子文件夹
    for root, _, files in os.walk(root_folder):
        # 筛选Word文件(兼容.doc和.docx)
        word_files = [f for f in files if f.lower().endswith(('.doc', '.docx'))]
        # 显示进度条(需安装tqdm)
        for file in tqdm(word_files, desc=f"Processing {
     
     os.path.basename(root)}"):
            file_path = os.path.join(root, file)
            content = extract_word_content(file_path)
            data.append({
   
   
                "文件名": file,
                "完整路径": file_path,
                "文件内容": content
            })
    return pd.DataFrame(data)

if __name__ == "__main__":
    # 配置参数
    folder_path = r"C:\Users\esensoft\Desktop\报名推荐"  # 修改为实际路径
    output_excel = "汇总结果.xlsx"

    # 执行处理
    df = process_folder(folder_path)
    
    # 导出Excel(自动处理格式)
    with pd.ExcelWriter(output_excel, engine='openpyxl') as writer:
        df.to_excel(writer, index=False, sheet_name='文档汇总')
        # 自动调整列宽
        for column in df.columns:
            max_len = max(df[column].astype(str).map(len).max(), len(column))
            writer.sheets['文档汇总'].column_dimensions[
                writer.sheets['文档汇总'].cell(row=1,
python读取excel写入word模板_使用python将Excel数据填充Word模板并生成Word 【项目需求】Excel中有一万多条学生学平险数据,需要给每位学生打印购买回执单,回执单包括学生姓名,身份证号,学校等信息,目前只能从Excel拷贝数据到Word模板中,然后打印,效率及其低下,寻求帮助。【解决方案】1、设计Word模板。2、读取Excel中的数据,并按Word模板生成Word文件。3、使用批量打印软件进行批量打印。关键需要解决word模板如何设计,像数据一样,定义好字段,后期能插入... 阅读详情

相关推荐

Python提取Word文件中的目录标题保存为Excel文件

Python提取Word文件中的目录标题内容保存为Excel文件

sichixi8218的博客 3028

使用Python将Word表格转Excel

今日需求 其实就是把Word中的表格转到Excel中,顺便做一个调整。 如果单单是两个表格,那只要简单的复制黏贴即可,但如果上百了呢?那就得考虑自动化了。好在今天碰到的需求中的原文件格式是比较有规律的,那直接来尝试一下。 # 首先要pip install python-docx # 如果原文件是doc格式,那就先转成docx from docx import Document import pandas as pd path = "./word表格转excel.docx" docx = Document

Lin_Xiao_Dai的博客 2841

Python将Excel文件内容写入Word文件

【代码】Python将Excel文件转Word文件。

weixin_42636075的博客 5176

Audio2Face进阶玩法:结合LiveLink在UE5中实现MetaHuman全身动画+语音驱动(保姆级配置指南)

本文提供了一份详尽的保姆级教程,指导如何将NVIDIA Audio2Face与Unreal Engine 5的LiveLink功能结合,实现驱动MetaHuman数字人面部表情的同时,无缝融合身体动画。文章详细讲解了从环境准备、插件部署、基础面部驱动测试,到动画蓝图高级配置与多数据流融合的全流程,并分享了性能优化与问题排查的实战经验,旨在帮助创作者打造表情与肢体动作协调统一的生动数字人。

q9w8e7r6t5的博客 196

水环境综合管控平台完整方案

水环境综合管控平台项目(2026-2027)摘要 项目概况: 总投资5亿元的水环境综合管控平台项目,是国家数字政府与生态文明建设战略的重要实践。项目严格遵循2026年最新政策标准,整合物联网、大数据和AI技术,构建覆盖水质监测、污染溯源、生态保护等全流程的智能管控体系。 核心内容: 系统架构:采用五层设计(基础设施层至展示层),集成10大核心功能模块,包括水质动态监测、污染智能溯源和生态评估预警系统; 技术创新:运用2026年最新边缘计算和数字孪生技术,实现毫秒级水质异常响应和三维流域仿真; 实施规划:分7

随读手记 403

synopsys工具安装系列(一)安装installer

synopsys为eda工具安装,提供了一个安装器,名叫installer。所以,首先要先安装installer这个工具,之后才能安装其他的eda工具。 首先从官网下载该installer工具。我这里下载的是5.2版本 下载之后,有如下安装文件。 将该安装包,拷贝到linux服务器中。 首先给SynopsysInstaller_v5.2.run赋予可执行权限。 chmod a+x SynopsysInstaller_...

weiqi7777的博客 8388

告别MATLAB依赖:手把手教你用Python实现GCC-PHAT时延估计(附完整代码与对比测试)

本文详细介绍了如何使用Python实现GCC-PHAT时延估计算法,替代传统的MATLAB依赖。通过完整的代码示例和性能对比测试,展示了Python在信号处理领域的强大能力,特别是在广义互相关和TDOA应用中的高效实现。文章还提供了实时音频处理和嵌入式部署的实用技巧,帮助工程师快速掌握这一关键技术。

weixin_42667269的博客 220

Qt中常见的面试题总结

基于Qt开发的一些常用面试题

一名热爱编程的程序员 8492

KEPServerEX 6 之 EX 6.11.718.0 发布说明

KEPServerEX 6.11.718.0 发布说明

-雲飛兄-博客 2880

多模态论文笔记——VQ-VAE和VQ-VAE-2

本文详细介绍VQ-VAE和VQ-VAE-2的原理和训练过程,为后面的dVAE在DALLE中的使用打下坚实的基础。

haopinglianlian的博客 3299

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

上一篇: 如何将当前文件夹及其子文件夹下的所有word提取到一个excel里
下一篇: 数据库视图创建及高级应用指南
Next2you
博客等级 码龄7年 1238粉丝 166原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Next2you

你真帅!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值