mcpField
R
read-bin-docs

read-bin-docs

github.com/ypares文档处理3058 次安装今天更新
代码仓库

关于 read-bin-docs

使用 pypdf 或随附命令行脚本从 PDF 提取文本的技能,支持选择页码范围和输出到文件,并说明扫描版 PDF 需要额外 OCR 工具。

主要功能

  1. 01提取 PDF 页面文本
  2. 02选择页码范围
  3. 03将提取文本写入文件
  4. 04使用 pypdf 或附带脚本
  5. 05说明扫描 PDF 的 OCR 限制

适用场景

  1. 01提取文本型 PDF 的内容
  2. 02将指定页面保存为文本文件
  3. 03从命令行执行 PDF 文本提取

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/ypares/agent-skills --skill read-bin-docs

安装后在 Claude Code 中输入/read-bin-docs确认已加载。

附带文件scripts/extract_pdf_text.py

详细介绍

文档格式

快速开始:从 PDF 中提取文本

需要从 PDF 中提取文本?使用这段 Python 代码:

from pypdf import PdfReader

reader = PdfReader("document.pdf")
text = "".join(page.extract_text() for page in reader.pages)
print(text)

也可以从命令行运行:

uvx --with pypdf python /path/to/extract_pdf_text.py document.pdf

PDF 文本提取

基本用法
from pypdf import PdfReader

# Read all pages
reader = PdfReader("file.pdf")
for page in reader.pages:
    text = page.extract_text()
    print(text)
提取特定页面
from pypdf import PdfReader

reader = PdfReader("file.pdf")
# Get pages 1-5 (0-indexed)
for page in reader.pages[0:5]:
    print(page.extract_text())
使用脚本

此技能包含用于命令行提取的 scripts/extract_pdf_text.py:

# Extract all pages to stdout
python extract_pdf_text.py document.pdf

# Extract to file
python extract_pdf_text.py document.pdf --output text.txt

# Extract specific pages
python extract_pdf_text.py document.pdf --pages 1-5
python extract_pdf_text.py document.pdf --pages 1,3,5
要求
  • pypdf:uvx --with pypdf python <script>
  • 适用于大多数基于文本的 PDF
  • 未经 OCR 处理的扫描版 PDF 无法提取文本

常见问题

“未提取到文本”:PDF 可能是未经 OCR 处理的扫描件(基于图像)。OCR 支持需要额外的工具。

“编码错误”:pypdf 可以处理大多数编码,但部分 PDF 可能存在编码问题。如果可用,请使用 page.extract_text(layout=True) 进行感知布局的提取。


未来计划:即将支持 DOCX、XLSX 和其他格式。

评论

支持 Markdown