Blog

Documenten naar Markdown converteren via CLI of Python

10 augustus 2026 · 4 min leestijd


Als je met AI of ML werkt, heb je waarschijnlijk meerdere documentformaten in je datasets: PDF-onderzoeken, DOCX-manuscripten, PPTX-presentaties, XLSX-rekenbladen en EPUB-ebooks. Voor training, fine-tuning of RAG moeten die worden genormaliseerd naar schone, gestructureerde tekst.

Dit artikel laat zien hoe je AnyMD vanaf de opdrachtregel en vanuit Python gebruikt om elk documentformaat in één stap naar Markdown om te zetten: geen formaatspecifieke parsers, fallbacks of opschoning.

Vanaf de opdrachtregel

Het eenvoudigste gebruik: één bestand converteren.

curl https://anymd.net/api/convert \
  -H "Authorization: Bearer your-key" \
  -F "file=@paper.pdf"

Dat is alles. AnyMD detecteert het formaat automatisch aan de bestandsextensie. Hetzelfde commando werkt voor DOCX, PPTX, XLSX, RTF, EPUB, ODT, HTML, CSV en meer.

Schrijf de uitvoer naar een bestand:

curl -s https://anymd.net/api/convert \
  -H "Authorization: Bearer your-key" \
  -F "file=@research-paper.pdf" \
  -o research-paper.md

Vanuit Python

import requests

with open("report.pdf", "rb") as f:
    resp = requests.post(
        "https://anymd.net/api/convert",
        headers={"Authorization": "Bearer your-key"},
        files={"file": ("report.pdf", f)},
    )
    markdown = resp.text
    print(markdown[:500])

Batchconversie voor trainingsdata

import requests
from pathlib import Path

markdown_dir = Path("training_data_md")
markdown_dir.mkdir(exist_ok=True)

for doc in Path("raw_documents").glob("*"):
    if doc.suffix not in {".pdf", ".docx", ".pptx", ".xlsx", ".epub"}:
        continue
    with open(doc, "rb") as f:
        resp = requests.post(
            "https://anymd.net/api/convert",
            headers={"Authorization": "Bearer your-key"},
            files={"file": (doc.name, f)},
        )
        if resp.ok:
            out = markdown_dir / f"{doc.stem}.md"
            out.write_text(resp.text)
            print(f"✓ {doc.name} → {out.name}")
        else:
            print(f"✗ {doc.name}: {resp.status_code}")

Dit is alle code die je nodig hebt om een gemengde documentbibliotheek te normaliseren naar schone, consistente Markdown, klaar voor chunking, embeddings of fine-tuning.

Waarom geen formaatspecifieke bibliotheken?

Veel projecten beginnen met PyMuPDF voor PDF, python-pptx voor PowerPoint, python-docx voor Word, openpyxl voor Excel en ebooklib voor EPUB. Dat zijn vijf bibliotheken, vijf API's, vijf uitvoerformaten en vijf onderhoudslasten.

AnyMD is één API, één uitvoerformaat (GFM Markdown) en één authenticatiesleutel. Geen bibliotheekbeheer, versieconflicten of formaatspecifieke randgevallen om te debuggen.

Haal je gratis API-sleutel op — 100 pagina's/maand, geen kaart nodig.


← Lees meer →