pdf

Extract text, tables, and metadata from PDFs using Python libraries.

Updated Aug 23, 2026
One-click install
npx skills add https://github.com/ashleytower/claude-skills-collection --skill pdf
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: pdf
Source: https://github.com/ashleytower/claude-skills-collection/tree/main/skills/pdf-processor
Command: npx skills add https://github.com/ashleytower/claude-skills-collection --skill pdf

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires pypdf, pdfplumber, reportlab, pytesseract, pdf2image, pandas, poppler-utils.

What problem does it solve?

Working with PDFs often involves manual, repetitive tasks like data extraction, merging, splitting, or filling forms. This skill provides a comprehensive toolkit to automate all these operations, transforming static documents into dynamic, actionable data and saving countless hours.

Core Features & Use Cases

  • Advanced Data Extraction: Extract text, tables, and metadata from any PDF, including scanned documents using OCR.
  • Document Manipulation: Merge, split, rotate, and password-protect PDFs with ease.
  • Dynamic PDF Creation: Generate new PDFs from scratch or fill existing forms programmatically.
  • Use Case: Automatically extract all product names and prices from a multi-page vendor catalog PDF into an Excel spreadsheet, then merge it with a cover letter and add a watermark before sending.

Quick Start

Read a PDF and extract text:

from pypdf import PdfReader reader = PdfReader("document.pdf") text = "" for page in reader.pages: text += page.extract_text() print(f"Pages: {len(reader.pages)}")

Frequently Asked Questions about pdf

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I extract text and tables from a PDF file?

Extract text and tables from PDFs using pdfplumber for structured data or pypdf for standard documents. Both libraries parse page content into readable strings or table objects, supporting scanned PDFs through OCR when pytesseract is configured with image preprocessing via pdf2image.

Can I automate filling PDF forms programmatically?

Yes, automate form filling by reading PDF structure with pypdf, identifying form fields, and writing values directly to the document. ReportLab enables creating new PDFs with pre-filled content, and batch scripts process multiple forms end-to-end without manual intervention.

What's the best way to merge, split, and rotate PDF pages?

Merge PDFs by combining page objects from pypdf readers; split by extracting specific page ranges; rotate using page rotation methods. These operations work on standard and password-protected documents, enabling batch workflows that reorganize multi-document sets before distribution or archiving.

How do I extract data from scanned PDF documents?

Extract data from scanned PDFs by converting pages to images with pdf2image, running OCR via pytesseract, and parsing recognized text into structured format. This workflow handles low-quality or image-only documents that standard text extraction cannot process.

Can I add watermarks and password protection to PDFs?

Add watermarks using ReportLab overlays or pypdf page manipulation; apply password protection through pypdf encryption methods. Both operations work in batch workflows, allowing you to secure and brand documents at scale before sharing or archiving.

Do I need external tools to process PDFs with Python?

Python libraries like pypdf and pdfplumber handle most tasks natively, but advanced features require CLI tools: poppler-utils provides pdftotext and image conversion; qpdf and pdftk offer command-line splitting and encryption when integrated into scripted pipelines.