Document Handler

📄 全能文档解析,一键提取元数据

一站式文档解析工具,支持 PDF、Office、EPUB 等 8 种格式的文本提取、元数据读取与格式转换,适合自动化文档处理工作流。

收藏
3.6k
安装
1.4k
版本
1.0.0
CLS 安全性认证2026-08-03
点击查看完整报告 >

使用说明

Document Handler 综合评估

核心用法

Document Handler 是一套命令行驱动的文档解析技能,专注于从各类办公文档中提取机器可读的文本内容与结构化元数据。其设计哲学是不依赖重量级商业软件,而是组合使用系统级工具(如 pdftotextunziptextutil)完成解析任务。

关键能力矩阵:

  • PDF:全文提取(pdftotext)、元数据(pdfinfo)、转图像(pdftoppm)、分页提取
  • Office 格式(DOCX/XLSX/PPTX):基于 OOXML 标准,直接解压提取 XML 中的纯文本与共享字符串
  • EPUB:解压后解析 HTML/XHTML,支持通过 lynx 渲染为可读文本
  • RTF:利用 macOS 原生的 textutil 转换为 TXT/HTML
  • OpenDocument(ODT/ODS/ODP):同样基于 ZIP+XML 结构提取

显著优点

1. 零商业软件依赖:完全基于开源工具链(poppler-utils、unzip、sed、lynx),可在 Linux/macOS 环境直接部署
2. 脚本化工作流:提供 extract_document.shpdf_to_images.sh 封装,支持管道化批量处理

3. 元数据标准化:输出 JSON 格式的文档属性(作者、创建时间、页数等),便于后续索引

4. 跨格式一致性:统一使用 "解压→解析 XML→清洗标签" 的模式处理 Office/OpenDocument,降低学习成本

潜在缺点与局限性

| 问题 | 影响 | 缓解方案 |
|------|------|----------|
| 格式信息丢失 | 复杂排版、表格、图片位置无法保留 | 对表格型 PDF 建议改用 `tabula` 或 `camelot` |
| 扫描版 PDF 无效 | 纯图像 PDF 无法直接提取文字 | 需前置 OCR 流程(`pdftoppm` + `tesseract`) |
| 加密文档受限 | 密码保护的 PDF/Office 文件无法处理 | 需人工预解密或提供密码参数 |
| XML 解析简陋 | 使用 `sed` 暴力去标签,可能残留乱码或截断内容 | 关键文档建议验证输出完整性 |
| 平台依赖 | `textutil` 为 macOS 专属,RTF 处理需适配 Linux | 条件化脚本或改用 `unrtf` |

适合人群

  • 数据工程师/分析师:需要批量提取合同、财报、研究报告中的文本进行 NLP 分析
  • 自动化运维:构建文档归档、全文检索、合规审计的流水线
  • 学术研究者:处理大量 PDF 论文,提取引用与元数据
  • 开发者:集成到 RAG(检索增强生成)系统的文档预处理环节

常规风险

  • 命令注入:若将用户上传的文件名直接拼接到 shell 命令中,存在路径遍历与命令注入风险
  • 敏感信息泄露:元数据提取可能暴露文档作者、公司、编辑历史等隐私数据
  • 资源消耗:大型 PDF(数百页扫描件)转图像时可能产生大量临时文件,需监控磁盘空间
  • 编码问题:旧版 Office 或 RTF 可能使用非 UTF-8 编码,导致中文乱码

使用建议

建议在生产环境部署时:1) 对输入文件名进行严格白名单过滤;2) 设置超时与资源限制;3) 对输出文本进行编码检测与规范化处理;4) 扫描版文档务必前置 OCR 模块。

安全解读

核心用法

Document Handler 是一款本地文档解析技能,专为 Agent 环境设计,可提取和处理 PDF、DOCX、XLSX、PPTX、EPUB、RTF、ODT、ODS、ODP 共9种主流文档格式的文本内容与元数据。该技能采用「识别-提取-转换」三段式工作流:首先通过文件扩展名识别格式类型,随后调用对应系统工具提取纯文本,同时抓取作者、创建时间、页数等元数据,最终输出结构化内容供下游任务使用。对于 PDF 还支持转换为图像序列,便于 OCR 或可视化处理。

显著优点

格式覆盖全面:从商业办公的 Office 系列到开源标准的 OpenDocument,从学术常用的 PDF 到电子书 EPUB,几乎涵盖日常遇到的所有文档场景,无需切换多个工具。完全离线运行:所有处理依赖系统预装工具(pdftotext、unzip、sed、textutil 等),零网络请求,从根本上杜绝数据外泄风险,特别适合处理敏感或机密文档。轻量化无依赖:无第三方代码库,不引入额外攻击面,仅 291 行代码实现完整功能,维护成本低。透明可审计:Shell 脚本实现逻辑清晰,可被安全团队快速审查,无黑盒操作。

潜在缺点与局限性

格式丢失严重:复杂排版、表格结构、图文混排在提取后会扁平化为纯文本,XLSX 的单元格关系、PPTX 的幻灯片层次均无法保留,需配合专门工具(如 tabula 处理 PDF 表格)弥补。扫描件支持弱:PDF 若为图像扫描件,需额外 OCR 流程,本技能仅提供 pdftoppm 转换图像功能,不内置文字识别。系统工具依赖:macOS 与 Linux 预装工具存在差异(如 textutil 为 macOS 专属),跨平台使用前需确认环境配置。加密文档受限:密码保护的 PDF 或 Office 文档无法自动解锁,需用户预处理。T3来源风险:发布者为 ClawHub 平台个人开发者,无知名组织背书,代码质量与长期维护存在不确定性。

适合的目标群体

该技能最适合注重数据隐私的企业安全团队需要批量处理文档的自动化运维人员构建本地知识库的研究者,以及开发文档问答系统的 AI 工程师。对于金融、法律、医疗等强合规行业,其离线特性可显著降低合规审计难度。不适合需要保留原始格式的桌面出版场景,或依赖云 OCR 高精度识别的复杂版式分析任务。

常规使用风险

性能瓶颈:大体积 PDF 或含大量工作表的 XLSX 处理时,unzip 解压与正则替换可能消耗较高 CPU 与内存,建议在容器内设置资源限制。临时文件残留:脚本运行中生成中间文件,若异常终止可能残留于 /tmp,需定期清理。元数据泄露:提取的文档属性可能包含作者真实姓名、企业部门、编辑历史等敏感信息,输出前需脱敏处理。权限放大:系统工具以 Agent 进程权限执行,若 Agent 运行于高权限账户,恶意文档可能利用工具漏洞(如历史版本 unzip 的路径遍历漏洞)造成风险,建议最小权限原则部署。

Document Handler 内容

scripts文件夹
手动下载zip · 4.0 kB
extract_document.shtext/x-shellscript
请选择文件