SuperAPI AI 工具集

portable-document-handler

办公与效率

查看项目

更新于 10-16 08:14

技能介绍

用途

本技能是一份 PDF 处理指南,围绕 Python 库与命令行工具,介绍常见的 PDF 创建、提取、合并、拆分与转换操作。适用于需要以脚本或命令行方式批量处理 PDF 的场景。

主要能力

  • 读取 PDF 并获取页数。
  • 提取文本(逐页拼接)与带布局的文本。
  • 提取表格,并可转换为 pandas DataFrame,进而导出为 Excel。
  • 提取元数据(标题、作者、主题、创建者)。
  • 合并多个 PDF、将 PDF 拆分为单页文件。
  • 旋转页面(示例为顺时针 90 度)。
  • 创建 PDF(使用 reportlab,支持单页与多页、标题、段落、分页符)。
  • 添加水印(通过 merge_page 合并水印页)。
  • 提取图片(使用 pdfimages)。
  • 为 PDF 添加密码(用户密码与所有者密码)。
  • 通过 OCR 从扫描版 PDF 提取文本(先转图片再识别)。
  • 命令行操作:pdftotext 提取文本(可保留布局、指定页码范围)、qpdf 合并/拆分/旋转/解密、pdftk 合并/拆分/旋转。

使用方式

指南以代码示例和命令示例为主:

  • Python:使用 pypdf 进行合并、拆分、元数据读取、旋转、水印与加密;使用 pdfplumber 提取文本与表格;使用 reportlab 创建 PDF;使用 pytesseract 与 pdf2image 对扫描件做 OCR。
  • 命令行:pdftotext、qpdf、pdftk、pdfimages 等工具的命令示例。
  • 快速参考表列出不同任务对应的推荐工具与命令/代码。

具体安装与依赖在示例中有所体现,例如 OCR 部分注明需 pip install pytesseract pdf2image。

适用场景

  • 批量合并或拆分 PDF 文件。
  • 从 PDF 中提取正文文本或表格数据并导出。
  • 生成报告类 PDF。
  • 为文档加水印或设置密码。
  • 处理扫描版 PDF 的文字识别。

限制

  • 使用 pdftk 时注明“若可用”,说明该工具并非总是存在。
  • OCR 功能依赖 pytesseract 与 pdf2image,并需先转换为图片。
  • 表单填写不在本篇展开,需参考 forms.md;高级 pypdfium2 用法与 JavaScript 库(pdf-lib)需参考 reference.md。
  • 关于收费、价格、平台支持范围与效果等事实,资料中暂未提供。