You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

求推荐可实现文件遍历与内容总结的Python库

求推荐可实现文件遍历与内容总结的Python库

刚好之前帮团队做过类似的小工具,用来批量处理调研数据生成轻量化总结报告,完全适配你「数据量不大但需要自动化替代人工」的需求,给你推荐几个轻量又好用的组合:

一、文件遍历与多格式读取

1. pathlib(Python3.4+ 自带,强推!)

这是Python官方现在主推的路径处理库,比传统的os模块语法优雅太多,遍历服务器上的文件目录简直得心应手——完全不用操心不同服务器系统(Linux/Windows)的路径分隔符问题,递归查找指定格式文件的代码写起来超清爽。

举个快速遍历的小例子:

from pathlib import Path

# 指向服务器上的调研数据根目录
survey_root = Path("/home/your-user/survey-collections")

# 递归遍历所有.txt和.csv格式的调研文件
target_files = list(survey_root.rglob("*.txt")) + list(survey_root.rglob("*.csv"))

for file in target_files:
    print(f"待处理文件: {file.resolve()}")  # 打印文件绝对路径
    # 这里可以直接对接后续的读取/总结逻辑

2. python-docx(针对Word格式的调研反馈)

如果你的调研数据里混有Word文档(比如用户提交的手写转Word的开放题反馈),这个库能轻松读取文档里的纯文本内容,轻量无冗余依赖,安装也简单:pip install python-docx

示例代码:

from docx import Document

def read_docx_content(file_path):
    doc = Document(file_path)
    return "\n".join([para.text for para in doc.paragraphs if para.text.strip()])

# 配合pathlib批量处理Word文件
for doc_file in survey_root.rglob("*.docx"):
    content = read_docx_content(doc_file)
    print(f"读取到Word内容片段: {content[:100]}...")

二、内容总结与Markdown生成

1. sumy(轻量文本摘要工具)

如果调研里有大量开放题的长文本反馈,需要自动提炼核心观点,sumy是绝佳选择——它不用调用大型LLM,基于统计和规则方法做摘要,速度快、资源占用低,完全适配小批量文本处理,安装:pip install sumy

示例:提取单篇文本的关键摘要(支持中英文)

from sumy.parsers.plaintext import PlaintextParser
from sumy.nlp.tokenizers import Tokenizer
from sumy.summarizers.lsa import LsaSummarizer

def generate_summary(text, sentence_count=3):
    # 处理中文的话,把"english"换成"chinese"即可
    parser = PlaintextParser.from_string(text, Tokenizer("chinese"))
    summarizer = LsaSummarizer()
    summary = summarizer(parser.document, sentence_count)
    return "\n".join([str(sent) for sent in summary])

# 测试用户开放题反馈
user_feedback = """我觉得这次调研的问题设置很贴合日常使用场景,覆盖了产品的核心功能,但希望后续能增加移动端体验相关的问题,另外问卷提交时偶尔会出现加载卡顿的情况,影响填写体验。"""
print(generate_summary(user_feedback))

2. tabulate(快速生成Markdown表格)

如果你的调研数据是结构化的(比如CSV里的选择题统计结果),用tabulate可以一键把数据转换成规范的Markdown表格,生成报告时直接复用就行,安装:pip install tabulate

示例:把统计数据转成Markdown表格

from tabulate import tabulate

# 比如统计不同年龄段的调研参与人数
age_stats = [
    ["18-25", 45],
    ["26-35", 62],
    ["36-45", 28]
]

# 生成GitHub风格的Markdown表格
md_table = tabulate(age_stats, headers=["年龄段", "参与人数"], tablefmt="github")
print(md_table)

输出的表格可以直接写入Markdown文件,格式完全符合规范,不用手动调整。

最后提个落地小建议

因为你的数据量不大,完全不用上复杂的大数据工具,用上面的库组合起来,核心流程大概是:

  1. pathlib遍历服务器上所有目标文件
  2. 按文件类型(TXT/CSV/Word)调用对应库读取内容
  3. 结构化数据用tabulate转成MD表格,非结构化文本用sumy生成摘要
  4. 把所有内容拼接成Markdown/TXT格式,写入服务器指定目录

如果遇到Excel格式的调研数据,再加个openpyxl读取内容就好,都是轻量库,不会给服务器增加额外负担~

火山引擎 最新活动