SuperAPI AI 工具集

iyeque-pdf-reader

办公与效率

查看项目

更新于 10-16 06:03

技能介绍

PDF Reader (Iyeque) 是一个 PDF 阅读技能,使用 PyMuPDF(导入名为 fitz)进行文本提取和元数据读取。

用途 该技能主要用于从 PDF 文件中提取纯文本内容,以及获取文档的元数据信息。适用于需要批量处理 PDF、快速预览 PDF 内容、提取学术论文文本或获取文档标题、作者、日期等信息的场景。

安装 pip install pymupdf

主要能力 该技能提供两个命令:

  1. extract — 提取文本 从指定的 PDF 文件中提取纯文本。 参数:
  • file_path(字符串,必填):PDF 文件路径。
  • --max_pages(整数,可选):最大提取页数。 用法示例:

提取全部文本

python3 skills/pdf-reader/reader.py extract /path/to/document.pdf

仅提取前 5 页

python3 skills/pdf-reader/reader.py extract /path/to/document.pdf --max_pages 5 输出:PDF 中的纯文本内容。

  1. metadata — 获取文档信息 获取文档的元数据。 参数:
  • file_path(字符串,必填):PDF 文件路径。 用法示例: python3 skills/pdf-reader/reader.py metadata /path/to/document.pdf 输出:包含文档元数据的结构化 JSON。

元数据字段

  • title:文档标题
  • author:文档作者
  • subject:文档主题
  • creator:创建该 PDF 的软件
  • producer:PDF 生成软件
  • creationDate:创建日期
  • modDate:修改日期
  • format:PDF 格式版本
  • encryption:加密信息(如有)

示例输出 提取输出: Plain text content from the PDF...

元数据输出: { "title": "Annual Report 2024", "author": "John Doe", "creationDate": "D:20240115120000Z", "creator": "Microsoft Word", "producer": "Adobe PDF Library", "format": "PDF 1.7" }

特性

  • 使用 PyMuPDF(fitz)进行快速提取
  • 支持元数据读取,包括创建日期和修改日期
  • 通过 --max_pages 限制页数,便于处理大文档
  • 支持加密 PDF(如适用则需要密码)
  • 对损坏或格式错误的 PDF 提供错误处理

适用场景

  • 从 PDF 文件中提取文本内容
  • 获取文档元数据(标题、作者、日期)
  • 批量处理多个 PDF 以进行分析
  • 快速预览 PDF 内容
  • 提取学术论文文本

Python API 替代方式 也可以直接在 Python 中使用 PyMuPDF:

import fitz # PyMuPDF

打开 PDF

doc = fitz.open("document.pdf")

获取元数据

print(doc.metadata)

提取所有页面的文本

for page in doc: text = page.get_text() print(text)

提取指定页面的文本

page = doc[0] # 第一页(从 0 开始索引) text = page.get_text()

说明

  • 使用 PyMuPDF(导入为 fitz)进行快速、可靠的 PDF 处理
  • 支持加密 PDF(如需要密码则会提示修改)
  • 通过 --max_pages 选项高效处理大型 PDF
  • 如果文件未找到或 PDF 无效,返回错误信息

错误处理

  • File not found:路径无效,检查文件路径
  • Not a valid PDF:文件损坏,验证文件完整性
  • Encrypted PDF:受密码保护,如需要则提供密码