Text aus PDF extrahieren
Diese Funktion liest den vollständigen Text einer PDF-Datei aus und liefert ihn als reinen Fließtext ohne Formatierung. Geeignet, wenn Sie den Inhalt eines Dokuments durchsuchen, in eine Tabelle kopieren oder in einem anderen Programm weiterverarbeiten möchten, ohne Layout oder Bilder zu übernehmen.
Online ausführen
Führen Sie dies mit Ihrem Konto auf unseren Servern aus. Kostenlose Tools laufen in Ihrem Browser; dieses wird zum oben genannten Preis von Ihrem KIT-Guthaben abgebucht.
Wenn Kopieren aus dem PDF-Reader nicht reicht
Text direkt aus einem PDF-Reader zu kopieren, funktioniert oft nur seitenweise und reißt dabei Absätze oder Spalten auseinander. Die Extraktion liest die Datei als Ganzes aus und liefert einen zusammenhängenden Text, der sich sofort durchsuchen, in eine Textverarbeitung einfügen oder an ein weiteres Programm übergeben lässt. Bei einem mehrseitigen Bericht summiert sich dieser Aufwand schnell zu einer mühsamen Bastelarbeit, die sich mit einem einzigen Durchlauf erledigen lässt.
Reiner Text, kein Layout
Ausgegeben wird der Textinhalt ohne Formatierung: keine Schriftgrößen, keine Spalten, keine eingebetteten Bilder. Das eignet sich für die Weiterverarbeitung, nicht für eine originalgetreue Ansicht – wer Struktur und Überschriften erhalten möchte, findet das in der Umwandlung nach Markdown. Für eine Volltextsuche, eine automatisierte Auswertung oder das Einspeisen in ein weiteres Programm reicht diese reine Textform in der Regel völlig aus und lässt sich sofort weiterverarbeiten.
Grenzen bei gescannten Dokumenten
Die Extraktion liest den in der Datei enthaltenen Text; ein eingescanntes Dokument ohne Textebene liefert daher wenig oder nichts. Für solche Fälle braucht es zunächst eine Texterkennung (OCR), erst danach lässt sich Text im eigentlichen Sinn extrahieren. Ein einfacher Test vorab hilft weiter: Lässt sich im PDF-Reader bereits ein einzelnes Wort markieren, ist eine Textebene vorhanden und die Extraktion liefert ein brauchbares Ergebnis.
Preis und Grenzen
Die Extraktion kostet $0.002 pro Anfrage, in US-Dollar, unabhängig von der Seitenzahl. Sie läuft auf dieser Seite für eine einzelne Datei oder über die API (Alias /pdf/to-text) für einen automatisierten Stapel. Verarbeitet werden Dateien bis 25 MB und 200 Seiten. Eine Rechnung stellen wir auf Anfrage aus, und der Preis bleibt unabhängig von der Textmenge auf jeder einzelnen Seite gleich.
Anwendungsfälle
Vertragstext in eine Prüfliste kopieren
Sabine Schneider extrahiert den Text eines mehrseitigen Vertrags, um einzelne Klauseln in eine interne Prüfliste zu kopieren, statt Absätze händisch aus dem PDF-Reader herauszureißen.
Volltextsuche in einem Archiv aufbauen
Weber Metallbau GmbH extrahiert den Text aller archivierten Protokolle, um eine Volltextsuche über mehrere Jahre Dokumentation aufzubauen.
Inhalt für die Weiterverarbeitung durch KI
Ein Freiberufler extrahiert den Text eines Berichts, um ihn anschließend automatisiert zusammenfassen zu lassen, statt den Bericht Seite für Seite manuell abzutippen.
Häufige Fragen
Bleibt das Layout im extrahierten Text erhalten?
Nein, ausgegeben wird reiner Fließtext ohne Formatierung, Spalten oder Bilder.
Funktioniert das auch bei eingescannten PDF-Dateien?
Nur, wenn die Datei bereits eine Textebene enthält. Ein reiner Bildscan ohne Text liefert wenig oder nichts – dafür braucht es zunächst eine Texterkennung.
Wie unterscheidet sich das von der Umwandlung nach Markdown?
Die Textextraktion liefert reinen Fließtext ohne Struktur. Die Umwandlung nach Markdown erhält zusätzlich Überschriften, Listen und Tabellen als Struktur – für eine reine Weiterverarbeitung des Inhalts reicht meist der reine Text.
Was kostet die Extraktion?
$0.002 pro Anfrage, in US-Dollar, unabhängig von der Seitenzahl.
Werden meine Dateien danach gespeichert?
Nein. Die Übertragung erfolgt verschlüsselt, die Datei dient ausschließlich der Extraktion und wird danach von unseren Servern entfernt.
Gibt es eine Grenze für Dateigröße oder Seitenzahl?
Ja, verarbeitet werden Dateien bis 25 MB und 200 Seiten.
Für Entwickler — API-Zugang
Alles auf dieser Seite ist auch per API verfügbar. Dieser Abschnitt richtet sich an Teams, die es in ihre eigenen Systeme einbinden möchten; alle anderen nutzen einfach das Tool oben.
Endpunkt
Authentifizierung per Bearer-Token. Ein einziger POST stellt die Aufgabe in die Warteschlange; das Ergebnis erhalten Sie per Webhook oder über einen signierten Link.
Aufruf aus Ihrem Stack
curl -X POST https://api.kit.forhosting.com/pdf/to-text \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"pdf":"https://ejemplo.com/documento.pdf"}'const res = await fetch("https://api.kit.forhosting.com/pdf/to-text", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"pdf": "https://ejemplo.com/documento.pdf"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/pdf/to-text",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"pdf": "https://ejemplo.com/documento.pdf"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/pdf/to-text", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"pdf":"https://ejemplo.com/documento.pdf"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"pdf":"https://ejemplo.com/documento.pdf"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/pdf/to-text", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Beispiel-Anfrage
{
"pdf": "https://ejemplo.com/documento.pdf"
}Beispiel-Antwort
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "pdf.to_text",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}Die API arbeitet asynchron: Sie erhalten sofort eine task_id. Polling ist mit 1 Anfrage pro Sekunde erlaubt.
Preis
Der Preis steht auf der Seite – keine Tokens, keine Credits. Fehlgeschlagene Aufgaben werden nicht berechnet.
Limits
max_mb | 25 |
max_pages | 200 |
Fehler
| HTTP | Code | Bedeutung |
|---|---|---|
401 | unauthorized | Der API-Schlüssel fehlt oder ist ungültig – prüfen Sie den Authorization-Header (Bearer). |
402 | insufficient_balance | Ihr Guthaben reicht für diese Aufgabe nicht aus – Aufladungen verfallen nicht. |
404 | unknown_type | Unbekannter Aufgabentyp – prüfen Sie das Feld „type“ gegen den Katalog. |
429 | rate_limited | Zu viele Anfragen – warten Sie kurz; Polling ist mit 1 Anfrage pro Sekunde erlaubt. |
413 | input_too_large | Die Eingabe überschreitet das Größenlimit dieser Aufgabe – die genaue Grenze steht auf der Seite. |