According to AlphaMoat, as of 2026-09, pdf-ocr-extraction has 1,853 downloads and 2 stars — ranked #4,534 of 5,078 AI skills overall, and #357 of 435 in Office.
| Platform | Installs | Downloads | Stars | Comments |
|---|---|---|---|---|
| ClawHub ↗ | 45 | 1.6K | 2 | - |
| SkillHub ↗ | 224 | 1.9K | 2 | — |
Platforms count differently and update at different times.
For scanned or image-based PDFs lacking a native text layer: completely free, no third-party APIs, unlimited usage; it renders PDF pages to high-resolution images (scale=2) and runs OCR. Dependencies: the tesseract system binary (with language packs like chi_sim/eng) and the Python packages pypdfium2, pytesseract, and Pillow; do not run automated pip install at runtime — rely on the user or environment to pre-install per the metadata block. Usage: create extract.py in a temporary directory (iterate pages via PdfDocument → save bitmap.to_pil() to /tmp/page_i.png → pytesseract.image_to_string(lang='chi_sim+eng') → os.remove cleanup → join full text), then run python3 extract.py /path/to/document.pdf. Security constraints: write temporary images only to /tmp/ and clean them up immediately after extraction; never dynamically download or install language packs via shell — notify the user if a specific language is missing. The temporary OCR images in predictable shared paths can expose document content (prefer in-memory OCR or a private randomized temp directory and delete immediately after processing), that OCR quality or coverage suffers when language packs are missing or the language option is wrong (install needed packs beforehand and match the Tesseract language option to the document), and that runtime dependency installation introduces operational and security uncertainty (pre-install Tesseract, language packs, pypdfium2, pytesseract, and Pillow in a least-privileged environment).
Profile published 2026-10-29
Generated from the skill’s documentation as examples; not results of actual runs.
The counting method changed in 2026-09: skills with the same name are now counted separately by author, and the full catalog is covered. Dashed lines show months before the change; they are not compared with later months, and no growth is computed across the change.
| Month | Downloads | MoM | Stars |
|---|---|---|---|
| 2026-09 | 1.9K | — | 2 |
| 2026-08 | 1.6K | +7.5% | 2 |
| 2026-07 | 1.4K | +20.9% | 2 |
| 2026-06 | 1.2K | +18.0% | 2 |
| 2026-05 | 1.0K | — | 2 |
| 2026-03 | 408 | — | 1 |
The author’s original file, shown as plain text without edits or review by AlphaMoat. Links are not clickable; check commands before running them. Fetched 2026-10-23.
---
name: pdf-ocr-extractor
description: Extract text from image-based or scanned PDFs using Tesseract OCR.
metadata:
{
"openclaw":
{
"emoji": "📄",
"requires": { "bins": ["tesseract", "python3"] },
"install": [
{
"id": "tesseract-ocr",
"kind": "system",
"package": "tesseract",
"bins": ["tesseract"],
"label": "Install Tesseract OCR (requires language packs e.g., tesseract-ocr-chi-sim)"
},
{
"id": "pip-deps",
"kind": "uv",
"package": "pypdfium2 pytesseract Pillow",
"label": "Install Python dependencies (pypdfium2, pytesseract, Pillow)"
}
]
}
}
---
# PDF OCR Extractor
Use this skill to extract text from scanned PDFs or image-based PDFs that lack a native text layer. It's completely free, doesn't utilize third-party APIs, and offers unlimited usage. It renders PDF pages to images and runs optical character recognition (OCR).
## Dependencies
This skill requires:
1. **System Binary**: `tesseract` (along with required language data packs like `chi_sim` or `eng`).
2. **Python Packages**: `pypdfium2`, `pytesseract`, and `Pillow`.
*Note: Do not run automated `pip install` commands at runtime. Rely on the user or the environment to pre-install the dependencies defined in the metadata block.*
## Quick Start
Create a Python script (e.g., `extract.py`) in a temporary directory to handle the extraction safely:
```python
import pypdfium2 as pdfium
import pytesseract
from PIL import Image
import sys
import os
def extract(pdf_path):
doc = pdfium.PdfDocument(pdf_path)
full_text = []
for i, page in enumerate(doc):
# Render page to a high-resolution image
bitmap = page.render(scale=2)
tmp_img = f"/tmp/page_{i}.png"
bitmap.to_pil().save(tmp_img)
# Run OCR (assuming English and Simplified Chinese packs are installed)
text = pytesseract.image_to_string(Image.open(tmp_img), lang='chi_sim+eng')
full_text.append(text)
# Cleanup temporary file
os.remove(tmp_img)
return "\n".join(full_text)
if __name__ == "__main__":
if len(sys.argv) > 1:
print(extract(sys.argv[1]))
```
Then execute the script:
```bash
python3 extract.py /path/to/document.pdf
```
## Security & Sandbox Constraints
- Write temporary images only to `/tmp/` and clean them up immediately after extraction.
- Do not attempt to dynamically download or install language packs via shell commands; notify the user if a specific language is missing.A full manual for creating, editing, and managing Tencent Docs through MCP.
Creates, inspects, and edits Excel files while keeping formulas, formatting, and workbook structure intact.
A working guide for Word and DOCX documents that keeps styles, numbering, and layout intact after edits.
Access Gmail, Calendar, Drive, Contacts, Sheets and Docs from the command line.
PDF and Image Text Extractor organizes document text, tables and scanned-page recognition into text results.
A skill that generates PPT decks from a topic and style.
The official skill for working with Kdocs cloud documents through kdocs-cli.
A small CLI that edits a chosen PDF page from a natural language instruction.
Data month: 2026-09 · Downloads, stars and installs are aggregated monthly from public skill registries (ClawHub, SkillHub). See methodology.