用于提取、生成、合并拆分及填写表单的全能 PDF 处理技能
复制安装指令,让 AI 自动完成配置 · 推荐新手
请帮我安装 askskill 上的 "pdf" 技能: 1. 下载 https://raw.githubusercontent.com/ComposioHQ/awesome-claude-skills/master/document-skills/pdf/SKILL.md 2. 保存为 ~/.claude/skills/pdf/SKILL.md 3. 装好后重载技能,告诉我可以用了
请批量读取这个文件夹中的 PDF 合同,提取每份合同里的付款条款表格,整理为统一字段的 CSV,保留文件名与页码。
输出一个汇总 CSV,包含各合同表格数据及来源信息。
根据这份用户信息 JSON,自动填写对应的 PDF 报名表字段,并导出可提交的新 PDF;如果字段缺失,请列出缺失项。
输出已填写完成的新 PDF,并附上缺失字段清单(如有)。
将这 5 份 PDF 报告按指定顺序合并,删除封面页,保留目录页,并把附录单独拆分成一个新文件。
输出一个重组后的主报告 PDF,以及一个单独的附录 PDF。
This guide covers essential PDF processing operations using Python libraries and command-line tools. For advanced features, JavaScript libraries, and detailed examples, see reference.md. If you need to fill out a PDF form, read forms.md and follow its instructions.
from pypdf import PdfReader, PdfWriter
# Read a PDF
reader = PdfReader("document.pdf")
print(f"Pages: {len(reader.pages)}")
# Extract text
text = ""
for page in reader.pages:
text += page.extract_text()
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)
reader = PdfReader("input.pdf")
for i, page in enumerate(reader.pages):
writer = PdfWriter()
writer.add_page(page)
with open(f"page_{i+1}.pdf", "wb") as output:
writer.write(output)
reader = PdfReader("document.pdf")
meta = reader.metadata
print(f"Title: {meta.title}")
print(f"Author: {meta.author}")
print(f"Subject: {meta.subject}")
print(f"Creator: {meta.creator}")
reader = PdfReader("input.pdf")
writer = PdfWriter()
page = reader.pages[0]
page.rotate(90) # Rotate 90 degrees clockwise
writer.add_page(page)
with open("rotated.pdf", "wb") as output:
writer.write(output)
import pdfplumber
with pdfplumber.open("document.pdf") as pdf:
for page in pdf.pages:
text = page.extract_text()
print(text)
with pdfplumber.open("document.pdf") as pdf:
for i, page in enumerate(pdf.pages):
tables = page.extract_tables()
for j, table in enumerate(tables):
print(f"Table {j+1} on page {i+1}:")
for row in table:
print(row)
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: # Check if table is not empty
df = pd.DataFrame(table[1:], columns=table[0])
all_tables.append(df)
# Combine all tables
if all_tables:
combined_df = pd.concat(all_tables, ignore_index=True)
combined_df.to_excel("extracted_tables.xlsx", index=False)
from reportlab.lib.pagesizes import letter
from reportlab.pdfgen import canvas
c = canvas.Canvas("hello.pdf", pagesize=letter)
width, height = letter
# Add text
c.drawString(100, height - 100, "Hello World!")
c.drawString(100, height - 120, "This is a PDF created with reportlab")
# Add a line
c.line(100, height - 140, 400, height - 140)
# Save
c.save()
from reportlab.lib.pagesizes import letter
from reportlab.platypus import SimpleDocTemplate, Paragraph, Spacer, PageBreak
from reportlab.lib.styles import getSampleStyleSheet
doc = SimpleDocTemplate("report.pdf", pagesize=letter)
styles = getSampleStyleSheet()
story = []
# Add content
title = Paragraph("Report Title", styles['Title'])
story.append(title)
story.append(Spacer(1, 12))
body = Paragraph("This is the body of the report. " * 20, styles['Normal'])
story.append(body)
story.append(PageBreak())
# Page 2
story.append(Paragraph("Page 2", styles['Heading1']))
story.append(Paragraph("Content for page 2", styles['Normal']))
# Build PDF
doc.build(story)
# Extract text
pdftotext input.pdf output.txt
# Extract text preserving layout
…
帮助用户发现并筛选 Claude 技能、资源与工具,优化 AI 工作流定制
通过 Rube MCP 自动执行 Algolia 检索与索引管理等任务。
通过 Rube MCP 自动化 Agiled 中的客户、项目与业务流程操作。
通过 Rube MCP 自动执行 Giphy 搜索与动图管理等工作流。
通过 Rube MCP 自动处理 GoToWebinar 的创建、报名与参会管理流程
通过 Rube MCP 自动执行 Agenty 任务,并先检索最新工具参数与结构。
处理PDF文档的读取提取、合并拆分、表单填写与OCR识别等任务
帮助你批量处理PDF、Excel、Word和PPT的提取、表单、公式与修订任务
支持从 PDF 提取文本、图片和表格,并进行多语言分类与相似度分析。
用于创建、编辑和分析Word文档,支持修订、批注与格式保留。
用于读取、生成与审阅PDF,并通过渲染检查版式和内容准确性。
提供多种 PDF 读写编辑处理能力,帮助用户高效完成文档操作与自动化流程。