PDF-Dokumente können verschiedene spezielle Formatierungen aufweisen, die jedoch schwer zu bearbeiten, kopieren oder durchsuchen sind. Wenn wir den Inhalt eines PDF-Dokuments verarbeiten möchten, können wir den Text und die Bilder aus dem PDF extrahieren und sie entweder mit Tools weiterverarbeiten oder direkt speichern, um sie für andere Zwecke zugänglich zu machen. In diesem Artikel wird erklärt, wie man mit Python Text und Bilder aus PDF-Dateien extrahiert und speichert.
Für die in diesem Artikel verwendete Methode benötigen wir Spire.PDF for Python, das von der offiziellen Website heruntergeladen oder direkt über pip installiert werden kann:
pip install Spire.PDF
Extrahieren von Text aus PDF-Dateien
Die Methode ExtractText kann den gesamten Text einer einzelnen Seite (einschließlich Leerzeichen) extrahieren und als String zurückgeben. Daher müssen wir nur durch die Seiten des Dokuments iterieren, diese Methode verwenden, um den Text jeder Seite zu extrahieren und in eine Textdatei zu schreiben, um den Text aus der PDF-Datei zu extrahieren. Die detaillierten Schritte sind wie folgt:
- Erstellen Sie eine Instanz der Klasse PdfDocument.
- Verwenden Sie die Methode PdfDocument.LoadFromFile(), um das PDF-Dokument zu laden.
- Erstellen Sie eine Textdatei zum Speichern des extrahierten Texts.
- Iterieren Sie durch die Seiten des Dokuments und verwenden Sie die Methode PdfPageBase.ExtractText(), um den Text der Seite zu erhalten und in die Textdatei zu schreiben.
Python
from spire.pdf import *
from spire.pdf.common import *
# Erstellen eines Objekts der Klasse PdfDocument
pdf = PdfDocument()
# Laden des PDF-Dokuments
pdf.LoadFromFile("Dokument.pdf")
# Erstellen einer TXT-Datei zum Speichern des extrahierten Texts
extractedText = open("output/Extrahierter_Text.txt", "w", encoding="utf-8")
# Iterieren durch die Seiten des Dokuments
for i in range(pdf.Pages.Count):
# Seite abrufen
page = pdf.Pages.get_Item(i)
# Text von der Seite extrahieren
text = page.ExtractText()
# Text in die TXT-Datei schreiben
extractedText.write(text + "\n")
extractedText.close()
pdf.Close()
PDF-Datei
Extrahierte Ergebnisse
Extrahieren von Bildern aus PDF-Dateien
Die Methode zum Extrahieren von Bildern aus PDF-Dateien ähnelt der Methode zum Extrahieren von Text. Sie müssen durch die einzelnen Seiten iterieren, die Methode ExtractImages verwenden, um alle Bilder einer Seite als Liste zurückzugeben, und dann die Bilder in der Liste speichern. Die detaillierten Schritte sind wie folgt:
- Erstellen Sie eine Instanz der Klasse PdfDocument.
- Verwenden Sie die Methode PdfDocument.LoadFromFile(), um das PDF-Dokument zu laden.
- Erstellen Sie eine Liste.
- Iterieren Sie durch die Seiten des Dokuments und verwenden Sie die Methode PdfPageBase.ExtractImages(), um die Bilder auf der Seite zu erhalten und in die erstellte Liste einzufügen.
- Speichern Sie die Bilder in der Liste.
Python
from spire.pdf import *
from spire.pdf.common import *
# Erstellen eines Objekts der Klasse PdfDocument
pdf = PdfDocument()
# Laden des PDF-Dokuments
pdf.LoadFromFile("Dokument.pdf")
# Erstellen einer Liste zum Speichern der Bilder
images = []
# Iterieren durch die Seiten des Dokuments
for i in range(pdf.Pages.Count):
page = pdf.Pages.get_Item(i)
for img in page.ExtractImages():
images.append(img)
# Speichern der extrahierten Bilder
i = 0
for image in images:
i += 1
image.Save("output/Bilder/Bild-{0:d}.png".format(i), ImageFormat.get_Png())
pdf.Close()
Extrahierte Ergebnisse
Das war eine Einführung in die Extrahierung von Text und Bildern aus PDF-Dateien mit Spire.PDF for Python. Wenn Sie mehr über die Bearbeitung von PDF-Dateien erfahren möchten, besuchen Sie das Spire.PDF for Python-Tutorial. Sie können auch das Spire.PDF-Forum besuchen, um an Diskussionen teilzunehmen.
Top comments (0)