全面的PDF处理工具包,支持文本与表格提取、新PDF创建、文档合并/拆分及表单处理功能。当Claude需要批量填写PDF表单,或通过编程方式大规模处理、生成或分析PDF文档时使用。
分类
文档处理安装
热度:3254
下载并解压到你的 skills 目录
复制命令,发送给智能体自动安装:
下载并安装这个技能 https://openskills.cc/api/download?slug=composiohq-document-skills-pdf&locale=zh&source=copy
PDF 处理技能 - Python 文档自动化工具包
技能概述
PDF 处理技能是一套完整的 Python 文档操作工具,用于从 PDF 中提取文本和表格数据、创建新文档、合并和分割文件,以及处理表单填写等任务,帮助用户实现文档处理自动化。
适用场景
核心功能
常见问题
如何从 PDF 中提取表格数据到 Excel?
使用 pdfplumber 库可以识别 PDF 中的表格结构并提取数据。代码示例:
import pdfplumber
import pandas as pd
with pdfplumber.open("document.pdf") as pdf:
all_tables = []
for page in pdf.pages:
tables = page.extract_tables()
for table in tables:
if table:
df = pd.DataFrame(table[1:], columns=table[0])
all_tables.append(df)
if all_tables:
combined_df = pd.concat(all_tables, ignore_index=True)
combined_df.to_excel("extracted_tables.xlsx", index=False)Python 处理 PDF 用哪个库最好?
不同任务适合不同库:
大多数任务可以通过组合这些库完成,具体选择取决于你的需求和开发环境。
如何批量合并多个 PDF 文件?
使用 pypdf 可以轻松合并多个 PDF:
from pypdf import PdfWriter, PdfReader
writer = PdfWriter()
for pdf_file in ["doc1.pdf", "doc2.pdf", "doc3.pdf"]:
reader = PdfReader(pdf_file)
for page in reader.pages:
writer.add_page(page)
with open("merged.pdf", "wb") as output:
writer.write(output)如需命令行批量处理,可以使用 qpdf:qpdf --empty --pages file1.pdf file2.pdf -- merged.pdf
扫描版 PDF 怎样提取文字?
扫描版 PDF 是图片格式,需要先转换为图像再进行 OCR 识别:
import pytesseract
from pdf2image import convert_from_path
images = convert_from_path('scanned.pdf')
text = ""
for i, image in enumerate(images):
text += f"Page {i+1}:\n"
text += pytesseract.image_to_string(image)
text += "\n\n"这需要安装 Tesseract OCR 引擎和 pdf2image 库,识别准确度取决于文档质量和文字清晰度。
PDF 处理能识别手写字迹吗?
标准 OCR 工具(如 Tesseract)对印刷体识别效果较好,但对个人手写字迹识别能力有限。如果需要识别手写内容,建议:
大多数文档处理场景(发票、报表、合同)都是印刷体,标准 OCR 即可满足需求。