Repository navigation
PDFStruct v0.1.0
PDFStruct converts PDFs locally and exports structured content. Free and open source (MIT), no account, no telemetry, no usage limits.
Highlights
- Interactive
pdfstructterminal menu: run it in a folder, pick PDFs, pick formats, done - Multi-PDF selection and multi-format selection (N PDFs x M formats, each PDF extracted once)
- Native PDF text extraction with a per-page quality score
- Automatic OCR fallback for scans and photos (PaddleOCR, CPU, in-process, models cached per user on first use)
- Output formats: JSON, HTML, TXT, Markdown, CSV, XLSX, DOCX, JSONL, SQLite
- File, folder and batch processing; non-interactive aliases
pdfjson,pdfhtml,pdftxt,pdfmd,pdfcsv,pdfxlsx,pdfdocx,pdfjsonl,pdfsqlitefor scripts and CI - Idempotent: unchanged PDFs are skipped, existing raw JSON is reused for every export
Install (from this release)
pip install pdfstruct-0.1.0-py3-none-any.whl
Python 3.10+ (OCR dependencies: 3.9–3.13). Not on PyPI yet.
Verified platforms
Tests, native extraction and CPU OCR passed on GitHub Actions with Python 3.13:
- Windows x86_64 (windows-latest)
- Linux x86_64 (ubuntu-latest)
- macOS Apple Silicon arm64 (macos-latest)
Other platforms (macOS Intel, Linux arm64, Windows ARM) install and extract native text, but OCR is not available there because paddlepaddle publishes no wheels for them.
Checksums
See SHA256SUMS.txt.