Wie konvertiert man eine PDF-Datei in eine Textdatei?

Gibt es eine einfache Möglichkeit, Klartext aus einer PDF-Datei zu extrahieren?

Auf *nix-Systemen hatte ich früher einen Befehl ps2ascii, der die Arbeit erledigte, aber es scheint, dass dieser Befehl nicht standardmäßig auf meinem Mac installiert ist.

Was wäre der einfachste Weg, um Text aus einer PDF-Datei zu extrahieren, oder alternativ, wie komme ps2asciiich auf mein System?

Antworten (6)

Adobe Reader hat im Menü „Datei“ die Option „Als Text speichern…“. Einfachster Weg.

Vielen Dank! Das ist mit Abstand die einfachste Lösung, kam mit meiner riesigen Datei problemlos zurecht und erzeugte eine halbwegs saubere und brauchbare Textausgabe.
Ja, es ist die einfachste, aber nicht immer die sauberste Ausgabe. v7 gibt die beste Ausgabe aus, aber davor und danach geht es drunter und drüber. Ein Teil meiner Arbeit besteht darin, College-Studenten mit Behinderungen Klartextversionen von College-Lehrbüchern zur Verfügung zu stellen. Ich habe viel Erfahrung damit, und deshalb empfehle ich Ghostscript, wenn Sie nach der kostenlosen Option suchen.
@ghoppe dank dieser einfachen Option, aber es ist nicht in der Mac-Version von Adobe verfügbar, wie macht man es in Adobe über Adobe Reader?

ps2asciiist ein Teil von Ghostscript , das auf Mac OS X installiert werden kann (und möglicherweise bereits ab Werk voreingestellt ist).

Ghostscript ist nicht in OSX enthalten. Tho eine der unten aufgeführten Methoden würde es gerne installieren.
Ich weiß nicht, ob ich es zu sehr forciere, aber könnten Sie mir genau sagen, was ich installieren muss und wie? (Vollständiger Haftungsausschluss: Ich bin ein ziemlich erfahrener Benutzer und habe es bereits geschafft, es zu installieren, aber in der Beta-Phase dieser Website würde ich gerne sehen, wie viele Details und Informationen wir von Leuten erwarten können, die Antworten geben.)
Ich denke, eine solche Frage würde den Rahmen von SE sprengen, da auf ihrer Website bereits sehr detaillierte Dokumente verfügbar sind. Eine geeignetere Frage in diesem Fall wäre meines Erachtens, eine Frage zur Installation zu stellen, nachdem Sie versucht haben, sie zu installieren, die Installation nach wiederholten Versuchen fehlschlägt und die Suche im Internet nur wenige oder keine Antworten liefert.
brew install ghostscriptsollte Ihnen die Installation ermöglichen ps2ascii. Das Ausführen dieses Programms druckte den gesamten Text aus einem PDF, das ich konvertieren wollte. Danke dir!

Das folgende Python-Skript gibt den Text aus einem PDF-Dokument in eine TXT-Datei aus. (Hinweis: Aufgrund der Art und Weise, wie Daten im PDF-Format gespeichert werden, gibt es keine Garantie dafür, dass der Text unbedingt in einer „logischen“, für Menschen lesbaren Reihenfolge vorliegt.)

Das Skript erstellt Textdateien für alle PDF-Dateien, die ihm als Argumente in der Befehlszeile (z. B. pdf2txt.py myPDF.pdf) bereitgestellt werden, oder Sie können es in der Aktion „Shell-Skript ausführen“ von Automator verwenden, indem Sie den Shell-Typ auf „ python “ setzen und die Eingabe auf „Als Argumente“ übergeben . .

#!/usr/bin/python
# coding: utf-8

import os, sys
from Quartz import PDFDocument
from CoreFoundation import (NSURL, NSString)
NSUTF8StringEncoding = 4

def pdf2txt():
    for filename in sys.argv[1:]:   
        inputfile =filename.decode('utf-8')
        shortName = os.path.splitext(filename)[0]
        outputfile = shortName+" text.txt"
        pdfURL = NSURL.fileURLWithPath_(inputfile)
        pdfDoc = PDFDocument.alloc().initWithURL_(pdfURL)
        if pdfDoc :
            pdfString = NSString.stringWithString_(pdfDoc.string())
            pdfString.writeToFile_atomically_encoding_error_(outputfile, True, NSUTF8StringEncoding, None)

if __name__ == "__main__":
   pdf2txt()
Zur Erinnerung: Das braucht pip install pyobjc.
@Itachi Nein, das tut es nicht: Es wird auf MacOS von Snow Leopard bis Catalina sofort einsatzbereit sein.
Ich bin etwas verwirrt, also woher kommt Quartzund CoreFoundation? Ist es ein eingebautes Paket Python für macOS?
MacOS wird mit Python 2.7 ausgeliefert und enthält pyObjC v.2.5.1. Sie können auf eine neuere Version von pyObjC aktualisieren, wenn Sie erweiterte Funktionen und Fehlerbehebungen wünschen – oder es sogar in Python3 installieren. Das werkseitige Betriebssystem wird jedoch seit etwa 10 Jahren oder länger mit derselben Version ausgeliefert.
NB: Monterey 12.3 hat python2 entfernt.

Wenn es Ihnen nichts ausmacht, eine GUI zu verwenden, können Sie Text aus einem mit Preview.app geöffneten PDF auswählen

Danke, das scheint für einfache Fälle zu funktionieren. Aber ich habe ein sehr großes Dokument (über 1000 Seiten) und es bringt fast das System zum Absturz, wenn ich nur versuche, alles auszuwählen!
Eine ausgefallene Lösung im Zusammenhang mit der obigen Antwort ist, dass Acrobat 7 tatsächlich überraschend saubere Textextraktionen durchgeführt hat (aber Sie sind besser dran, ein geeignetes Dienstprogramm wie Ghostscript für etwas so Großes zu verwenden).

Mir ist kein natives OS X- Dienstprogramm bekannt, das dies tut, aber Sie können die meisten Unix/Linux-Befehle mit einer dieser drei Methoden installieren:

Homebew : Homebrew ist die einfachste und flexibelste Möglichkeit, die UNIX-Tools zu installieren, die Apple nicht mit OS X geliefert hat.

Fink : Das Fink-Projekt möchte die ganze Welt der Unix-Open-Source-Software zu Darwin und Mac OS X bringen.

Macports : Das MacPorts-Projekt ist eine Open-Source-Community-Initiative zum Entwerfen eines benutzerfreundlichen Systems zum Kompilieren, Installieren und Aktualisieren von entweder Befehlszeilen-, X11- oder Aqua-basierter Open-Source-Software auf dem Mac OS X-Betriebssystem.

Homebrew ist das „neue Kind auf dem Block“ und verspricht, die „Probleme und Einschränkungen“ zu lösen, die die anderen beiden haben (was auch immer diese Probleme sein mögen). Ich schlage vor, dass Sie sich alle ansehen und das verwenden, was Sie für Ihre Bedürfnisse am flexibelsten / einfachsten halten.

Es gibt jedoch eine App (Payware), die das früher getan hat (ob sie das noch tut, weiß ich nicht). Ich spreche von DEVONthink und Sie können ein paar Tage lang eine Demo ausprobieren.

Update : Laut diesem Beitrag könnte man DevonThink (Testversion) installieren und die Binärdatei 'pdftotext' " die natürlich kostenlos ist " [sic] aus dem Bundle extrahieren.

Danke für die Hinweise, aber welche davon würden eigentlich enthalten ps2ascii? Und welches sollte ich bevorzugen?
MacPorts verarbeitet Ghostscript 9 (die neueste Version).
Das native Dienstprogramm von OS X ist die Adobe Reader-Anwendung, die über Als Text speichern verfügt.

Verwenden Sie Online-Dokumentkonverter wie Saaspose.PDF , die Ihre PDF-Datei in ein TXT-basiertes Dokument konvertieren können. Und da es sich um eine Cloud-API handelt, müssen Sie nichts herunterladen oder installieren.

Aber natürlich müssen Sie Ihr Dokument dort hochladen. Was werden sie danach damit machen?