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

Python批量读取docx文件提取指定关键词并生成DataFrame或表格

批量读取Word文档并搜索关键词生成结构化表格/DataFrame

所需依赖

先安装必要的Python库:

pip install python-docx pandas

实现步骤与代码

下面是完整的实现代码,能遍历指定文件夹下的所有.docx文件,搜索目标关键词并生成结构化的DataFrame(或导出为表格文件):

import os
from docx import Document
import pandas as pd

# 配置参数
folder_path = "./docx_files"  # 替换为你的Word文档所在文件夹路径
target_keyword = "laptop"
case_sensitive = False  # 设置为True则区分大小写

# 初始化结果存储列表
results = []

# 遍历文件夹中的所有docx文件
for filename in os.listdir(folder_path):
    if filename.endswith(".docx"):
        file_path = os.path.join(folder_path, filename)
        try:
            # 读取Word文档内容
            doc = Document(file_path)
            full_text = "\n".join([para.text for para in doc.paragraphs])
            
            # 判断是否包含关键词
            if case_sensitive:
                has_keyword = target_keyword in full_text
            else:
                has_keyword = target_keyword.lower() in full_text.lower()
            
            # 如果包含关键词,添加到结果列表
            if has_keyword:
                results.append({"FileName": filename, "Keyword": f'"{target_keyword}"'})
        except Exception as e:
            print(f"处理文件 {filename} 时出错: {str(e)}")

# 转换为DataFrame
result_df = pd.DataFrame(results)

# 打印结果
print(result_df)

# 可选:导出为Excel表格
# result_df.to_excel("keyword_search_results.xlsx", index=False)

关键说明

  • 大小写处理:通过case_sensitive参数控制是否区分关键词的大小写,默认不区分,适配类似"Laptop"、"LAPTOP"的情况。
  • 错误处理:添加了异常捕获,避免单个文件读取失败导致整个程序终止。
  • 扩展功能:如果需要遍历子文件夹中的文档,可以将os.listdir替换为os.walk,遍历所有层级的文件。
  • 结果导出:取消代码中最后一行的注释,即可将结果导出为Excel文件,方便后续分析。

内容的提问来源于stack exchange,提问作者Alice jinx

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.20 03:55:31