PDF OCR Using Gemini LLM
v0.1.7Extract text from PDFs using Google Gemini OCR. Use when extracting text from PDFs, performing OCR on scanned documents, or processing image-based PDFs.
Purpose
Use geminipdfocr to extract text from PDF documents via OCR (Google Gemini).
Data and privacy
Full page images/files are sent to Google's API. PDFs are split into single-page files and each page is uploaded to Google Gemini for OCR. There are no hidden exfiltration endpoints or other data collection. Do not use with highly sensitive documents unless you accept that content is sent to Google.
Setup (venv installation)
Before first use, create and activate the virtual environment:
cd geminipdfocr && python -m venv venv && source venv/bin/activate && pip install -r requirements.txt
Set GOOGLE_API_KEY in your environment before running (e.g. export GOOGLE_API_KEY=your-key).
How to use
When requested to extract text or perform OCR on a PDF:
- Run:
cd geminipdfocr && source venv/bin/activate && python -m geminipdfocr <path-to-pdf> [--json] [--output <file>] - Use
--jsonfor structured data. - Use
--max-pages Nfor testing or very long documents. - Use
--quietto suppress progress logs.
Requirements
- A valid PDF file path.
GOOGLE_API_KEYset in the process environment (e.g.export GOOGLE_API_KEY=your-key).
CLI options
| Option | Description |
|---|---|
pdf_path | One or more PDF file paths (positional) |
--max-pages N | Limit pages per PDF |
--json | Output structured JSON instead of plain text |
--output FILE | Write result to file (default: stdout) |
--quiet | Suppress INFO/DEBUG logs |
Version tags
latest
Runtime requirements
EnvGOOGLE_API_KEY
Primary envGOOGLE_API_KEY
Install
Python deps
uv tool install google-genaiuv
uv tool install pymupdfuv
uv tool install pydanticuv
uv tool install pydantic-settings