بنقرة واحدة
liteparse
Local PDF parsing via liteparse — text with bounding boxes, page screenshots, visual element detection.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Local PDF parsing via liteparse — text with bounding boxes, page screenshots, visual element detection.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Iceland energy authority — electricity generation, use, fuel sales, power plants and licences. Use for energy-system analysis.
Fiskistofa — public WFS layers for fishing closures, regulations and fishing areas; paid REST catch/quota data is excluded.
Hafrannsóknastofnun / MFRI — annual fish-stock assessments, advice, landings and survey series in embedded tables.
Environment Agency of Iceland GIS — open WFS layers for contaminated land, water, protected areas, noise and wastewater.
Icelandic Met Office (Veðurstofa) — weather observations, stations, forecasts and earthquakes via the modern JSON API at api.vedur.is.
Iceland Tax Authority — annual reports (ársreikningar), company registry, ownership chain mapping by kennitala.
| name | liteparse |
| description | Local PDF parsing via liteparse — text with bounding boxes, page screenshots, visual element detection. |
Fast, local PDF parser (LlamaIndex) for text extraction with bounding box coordinates, page screenshots, and visual element detection. Wraps a Node.js CLI (lit) via a Python wrapper.
uv pip install liteparse
# CLI available as `lit` (requires Node.js/npx)
Current version: 1.2.1. Docs: https://developers.llamaindex.ai/liteparse/
# Parse PDF to text
lit parse document.pdf
# Parse to JSON with bounding boxes
lit parse document.pdf --format json -o output.json
# Parse specific pages, no OCR (native PDFs)
lit parse document.pdf --format json --no-ocr --target-pages "1-5,10"
# Screenshot pages at high DPI
lit screenshot document.pdf -o ./screenshots --dpi 200
# Batch parse a directory
lit batch-parse ./pdfs ./outputs --recursive --extension ".pdf"
| Flag | Default | Description |
|---|---|---|
-o, --output | stdout | Output file path |
--format | text | text or json |
--no-ocr | false | Disable OCR (use for native/digital PDFs) |
--ocr-language | en | Language code (is for Icelandic) |
--target-pages | all | Page ranges: "1-5,10,15-20" |
--dpi | 150 | Rendering resolution |
--num-workers | CPU-1 | Parallel OCR workers |
--max-pages | 10000 | Page limit |
--password | For encrypted PDFs | |
-q, --quiet | false | Suppress progress |
from liteparse import LiteParse
parser = LiteParse()
# Parse — use ocr_enabled=False for native PDFs (much faster)
result = parser.parse(
"document.pdf",
ocr_enabled=False, # Skip OCR for digital PDFs
ocr_language="is", # Icelandic OCR when needed
target_pages="1-10", # Optional page selection
dpi=150, # Resolution for OCR
)
# Full text
print(result.text)
# Per-page access
for page in result.pages:
print(f"Page {page.pageNum}: {page.width}x{page.height}")
print(f" Text items: {len(page.textItems)}")
print(f" Bounding boxes: {len(page.boundingBoxes)}")
ParseResult
.text — full document text.pages — list of ParsedPageParsedPage
.pageNum — 1-indexed page number.width, .height — page dimensions (PDF points).text — page text.textItems — list of TextItem with position data.boundingBoxes — list of BoundingBox regionsTextItem — individual text fragment with coordinates
.text — the text content.x, .y — position (top-left origin, PDF points).width, .height — dimensions.fontName — font identifier.fontSize — font size.confidence — OCR confidence (when OCR enabled)BoundingBox — rectangular region
.x1, .y1, .x2, .y2 — corner coordinatesresult = parser.screenshot(
"document.pdf",
output_dir="./screenshots",
target_pages="1,5,10",
dpi=200,
image_format="png", # or "jpg"
)
for s in result.screenshots:
print(f"Page {s.page_num}: {s.image_path}")
ScreenshotBatchResult
.screenshots — list of ScreenshotResult
.page_num, .image_path, .image_bytesliteparse extracts text with coordinates. pdfplumber detects vector graphics (rects, curves, lines) and embedded images. Combine both for full visual element extraction:
import liteparse
import pdfplumber
parser = liteparse.LiteParse()
result = parser.parse("doc.pdf", ocr_enabled=False)
with pdfplumber.open("doc.pdf") as pdf:
for lp_page in result.pages:
pp_page = pdf.pages[lp_page.pageNum - 1]
images = pp_page.images or [] # Embedded raster images
rects = pp_page.rects or [] # Rectangles
curves = pp_page.curves or [] # Bezier curves (SVG-like)
lines = pp_page.lines or [] # Line segments
# Page classification heuristic
text_len = len(lp_page.text.strip())
if len(curves) > 10 and not images:
page_type = "infographic" # Vector graphics
elif images and text_len < 200:
page_type = "photo_page"
elif images:
page_type = "mixed" # Text + images
else:
page_type = "text"
ocr_enabled=False for native/digital PDFs.y coordinates.width=595 is A4 width.pdfimages CLI for that.npx @llamaindex/liteparse — requires Node.js.