以下是利用 Python 批量统计文件夹下 docx 文件中的特定关键词词频,并将输出结果导出到 excel 的代码:

import os
import docx
import openpyxl
from collections import Counter

# 定义要查找的关键词
KEYWORDS = ['apple', 'banana', 'orange']

# 定义统计结果存储的字典
result = {}

# 遍历文件夹下所有 docx 文件
for filename in os.listdir(path):
    if filename.endswith('.docx'):
        file_path = os.path.join(path, filename)

        # 打开 docx 文件
        doc = docx.Document(file_path)

        # 统计词频
        words = []
        for para in doc.paragraphs:
            words += para.text.split()
        count = Counter(words)
        for keyword in KEYWORDS:
            result.setdefault(keyword, []).append(count[keyword])

# 将结果导出到 excel
wb = openpyxl.Workbook()
ws = wb.active
ws.title = '统计结果'
ws.append(['关键词'] + [os.path.basename(file) for file in os.listdir(path) if file.endswith('.docx')])
for keyword in KEYWORDS:
    ws.append([keyword] + result[keyword])
output_file = os.path.join(path, '统计结果.xlsx')
wb.save(output_file)

说明:

  1. 首先定义了要查找的关键词,可以根据实际需要修改。
  2. 使用 os 模块遍历文件夹下所有 docx 文件,并打开每个文件。
  3. 对于每个文件,使用 docx 模块读取所有段落的文本,拆分成单词,并统计每个关键词的词频。
  4. 将统计结果存储在一个字典中,以便后续导出到 excel。
  5. 使用 openpyxl 模块创建一个新的 excel 文件,并将统计结果导出到其中。导出的表格第一行是文件名,第一列是关键词,每个单元格是对应关键词在对应文件中的词频。

注意事项:

  1. 在代码中的 path 变量需要修改为要统计的文件夹路径。
  2. 代码中假设所有 docx 文件都在指定文件夹下,没有考虑子文件夹的情况,如果需要统计子文件夹中的文件,需要修改代码。
  3. 在导出结果到 excel 时,需要安装 openpyxl 模块,可以使用 pip 安装。
Python 批量统计 docx 文件关键词词频并导出 Excel

原文地址: http://www.cveoy.top/t/topic/mLFw 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录