agentsclimarketplace

Opendataloader pdf

Skill matematicsolutions/awesome-matematic-skills-pl/dokumenty/skills/opendataloader-pdf

Wysokiej jakości konwerter PDF→JSON/Markdown dla AI - zachowuje reading order, strukturę tabel, headings. Użyj gdy użytkownik mówi "wysoka jakość PDF", "papers naukowe PDF", "tabele z PDF", "opendataloader", "PDF z skomplikowaną strukturą", albo gdy MarkItDown daje słaby output. Główny konwerter PDF→MD w pipeline Konwerter/ w Obsidian Vault.From its SKILL.md

Install
npx -y skills add matematicsolutions/awesome-matematic-skills-pl --skill opendataloader-pdf

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 5 stars5 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its file declares

Copied from the file, not written here

The file declares its own license as Apache-2.0. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.

SKILL.md

3.4 KB, 941 tokens by cl100k_base, as published. Nobody here has run it

OpenDataLoader PDF - PDF→JSON/MD (PL)

Java-based (Python wrapper) parser PDF najwyższej jakości dla AI. Benchmarki: NID (reading order), TEDS (tabele), MHS (headings). Używany w pipeline Konwerter/ w vault.

Instalacja (zrobione 2026-04-21)

python -m pip install --user opendataloader-pdf

Python 3.14, opendataloader-pdf 2.2.1. Wymaga Java 17+ (mamy Eclipse Adoptium JDK 17). CLI: python -m opendataloader_pdf albo opendataloader-pdf.exe ze Scripts/.

Wspierane outputy

  • JSON (pełna struktura - reading order, bounding boxes, tabele jako 2D arrays) - default
  • Markdown (flattened output, gotowy pod LLM)
  • HTML (opcjonalnie)

Użycie

CLI - pojedynczy PDF

python -m opendataloader_pdf --input plik.pdf --output output/ --format md

Batch (Obsidian Vault, pipeline Konwerter)

python -m opendataloader_pdf \
  --input "%USERPROFILE%/Documents/Obsidian Vault/wszystko co wpada szybko/" \
  --output "%USERPROFILE%/Documents/Obsidian Vault/Konwerter/" \
  --format md \
  --recursive

Zaawansowane flagi

  • --enrich-formula - wyciąga formuły LaTeX
  • --enrich-picture-description - opis obrazów (wymaga --hybrid-mode full)
  • --filter-hidden-text - wykrywa ukryty tekst (off by default, per-page rendering)

Python API

import opendataloader_pdf
result = opendataloader_pdf.load("plik.pdf", output_format="markdown")
print(result.markdown)

Kiedy użyć vs MarkItDown

PDFNarzędzie
Prosty, tekst liniowy (blog, artykuł prasowy)MarkItDown (szybsze)
Papers naukowe, raporty z tabelamiOpenDataLoader (jakość)
Dokumenty z 2-kolumnowym layoutemOpenDataLoader (reading order)
Multi-page tabeleOpenDataLoader (TEDS)
Batch Konwerter/ (domyślnie)OpenDataLoader

Integracja z vault

Pipeline Konwerter (istnieje Python script w _vault-management/scripts/):

  1. PDF wrzucone do wszystko co wpada szybko/ lub dropowane bezpośrednio
  2. opendataloader-pdf --input <path> --format md --output Konwerter/
  3. Frontmatter: type: source-pdf, tags: [pdf, zrodlo] - zgodnie z vault-rules.json → clippings.classification_rules.pdf_source
  4. Powiązane oryginały PDF w folderze Konwerter/ lub Attachments

Gotcha

  • Java 17 wymagana - Adoptium JDK zainstalowana (/c/Program Files/Eclipse Adoptium/jdk-17.0.10.7-hotspot/)
  • Wolniejsze niż MarkItDown - nie używaj dla prostych PDFów
  • ForkJoinPool parallelism - per-page przetwarzanie równoległe, --filter-hidden-text wyłącza parallel
  • Przy zmianach CLI opcji w Java: npm run sync (dla kontrybutorów - nas nie dotyczy)

Zasady

  • Zawsze output do Konwerter/, nie nadpisuj oryginalnych PDF
  • Batch > 10 PDF → zapytaj Wiesława przed startem
  • Idempotencja: jeśli .md już istnieje w output i checksumma PDF nie zmieniona → skip

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.