PaddleOCR Document Parsing V2
Parse documents using PaddleOCR's API. Supports both sync and async modes for images and PDFs.
hioTEC
@hiotec
What This Skill Does
Command-line tool that parses images and PDFs using PaddleOCR's API, extracting text with layout analysis in Markdown format. Supports both synchronous mode for small files and asynchronous mode with progress polling for large documents.
Replaces manual OCR setup and complex API integrations by providing a single CLI that handles both sync and async parsing with structured Markdown output.
When to Use It
- Extract text and layout from scanned PDF invoices
- Parse multi-page documents with tables and formulas
- Convert image-based receipts into structured Markdown
- Process large PDFs with progress tracking via async mode
- Batch extract text from multiple JPG or PNG screenshots
Install
$ openclaw skills install @hiotec/paddleocr-doc-parsing-v2PaddleOCR Document Parsing
Parse images and PDF files using PaddleOCR's API. Supports both synchronous and asynchronous parsing modes with structured output.
Resource Links
| Resource | Link |
|---|---|
| Official Website | https://www.paddleocr.com |
| API Documentation | https://ai.baidu.com/ai-doc/AISTUDIO/Cmkz2m0ma |
| GitHub | https://github.com/PaddlePaddle/PaddleOCR |
Key Features
- Multi-format support: PDF and image files (JPG, PNG, BMP, TIFF)
- Two parsing modes:
- Sync mode: Fast response for small files (<600s timeout)
- Async mode: For large files with progress polling
- Layout analysis: Automatic detection of text blocks, tables, formulas
- Multi-language: Support for 110+ languages
- Structured output: Markdown format with preserved document structure
Setup
- Visit PaddleOCR to obtain your API credentials
- Set environment variables:
export PADDLEOCR_ACCESS_TOKEN="your_token_here"
export PADDLEOCR_API_URL="https://your-endpoint.aistudio-app.com/layout-parsing"
# Optional: For async mode
export PADDLEOCR_JOB_URL="https://your-job-endpoint.aistudio-app.com/api/v2/ocr/jobs"
export PADDLEOCR_MODEL="PaddleOCR-VL-1.5"
Usage Examples
Sync Mode (Default)
For small files and quick processing:
# Parse local image
{baseDir}/paddleocr_parse.sh document.jpg
# Parse PDF
{baseDir}/paddleocr_parse.sh -t pdf document.pdf
# Parse from URL
{baseDir}/paddleocr_parse.sh https://example.com/document.jpg
# Save output to file
{baseDir}/paddleocr_parse.sh -o result.json document.jpg
# Verbose output
{baseDir}/paddleocr_parse.sh -v document.jpg
Async Mode
For large files with progress tracking:
# Parse large PDF with async mode
{baseDir}/paddleocr_parse.sh --async large-document.pdf
# Parse from URL with async mode
{baseDir}/paddleocr_parse.sh --async -t pdf https://example.com/doc.pdf
# Save async result to file
{baseDir}/paddleocr_parse.sh --async -o result.json document.pdf
Using Python Script Directly
# Sync mode
python3 {baseDir}/paddleocr_parse.py document.jpg
# Async mode
python3 {baseDir}/paddleocr_parse.py --async-mode document.pdf
# With output file
python3 {baseDir}/paddleocr_parse.py -o result.json --async-mode document.pdf
Response Structure
{
"logId": "unique_request_id",
"errorCode": 0,
"errorMsg": "Success",
"result": {
"layoutParsingResults": [
{
"prunedResult": [...],
"markdown": {
"text": "# Document Title\n\nParagraph content...",
"images": {}
},
"outputImages": [...],
"inputImage": "http://input-image"
}
],
"dataInfo": {...}
}
}
Important Fields:
prunedResult- Contains detailed layout element information including positions, categories, etc.markdown- Stores the document content converted to Markdown format with preserved structure and formatting.
Mode Selection Guide
| Use Case | Recommended Mode |
|---|---|
| Small images (< 10MB) | Sync |
| Single page PDFs | Sync |
| Large PDFs (> 10MB) | Async |
| Multi-page documents | Async |
| Batch processing | Async |
| Quick text extraction | Sync |
Error Handling
The script will exit with code 1 and print error message for:
- Missing required environment variables
- File not found
- API authentication failures
- Invalid JSON responses
- API error codes (non-zero)
Quota Information
See official documentation: https://ai.baidu.com/ai-doc/AISTUDIO/Xmjclapam
Top skills in this category
Nano Pdf
@steipeteEdit PDFs with natural-language instructions using the nano-pdf CLI.
Word / DOCX
@ivangdavilaCreate, inspect, and edit Microsoft Word documents and DOCX files with reliable styles, numbering, tracked changes, tables, sections, and compatibility check...
Excel / XLSX
@ivangdavilaCreate, inspect, and edit Microsoft Excel workbooks and XLSX files with reliable formulas, dates, types, formatting, recalculation, and template preservation...
Markdown Converter
@steipeteConvert documents and files to Markdown using markitdown. Use when converting PDF, Word (.docx), PowerPoint (.pptx), Excel (.xlsx, .xls), HTML, CSV, JSON, XML, images (with EXIF/OCR), audio (with transcription), ZIP archives, YouTube URLs, or EPubs to Markdown format for LLM processing or text analysis.
Powerpoint / PPTX
@ivangdavilaCreate, inspect, and edit Microsoft PowerPoint presentations and PPTX decks with reliable layouts, templates, placeholders, notes, charts, and visual QA. Use...