Open Source Python PDF Parser-Bibliothek
Probieren Sie diese kostenlose und Open Source-Python-Bibliothek aus, um Text, Bilder, Tabellen und andere Inhalte aus PDF-Dokumenten zu analysieren, zu lesen und zu extrahieren.
Was ist PyMuPDF?
PyMuPDF, auch bekannt als Fitz, ist eine Open-Source-Python-Bibliothek, die einen umfassenden Satz an Tools für die Arbeit mit PDF-Dateien bietet. Mit PyMuPDF können Benutzer Aufgaben wie das Öffnen von PDFs, das Extrahieren von Text, Bildern und Tabellen, das Bearbeiten von Seiteneigenschaften wie Drehen und Zuschneiden, das Erstellen neuer PDF-Dokumente und das Konvertieren von PDF-Seiten in Bilder effizient ausführen.
PyMuPDF unterstützt mehrere Funktionen, die unten aufgeführt sind:
- Lesen von PDF-Dokumenten: PyMuPDF kann PDF-Dokumente öffnen und lesen, sodass Sie auf den darin enthaltenen Text, die Bilder und andere Inhalte zugreifen können.
- Textextraktion: Sie können Text aus PDF-Dokumenten extrahieren, einschließlich Textinhalt, Schriftarten und Layoutinformationen.
- Bildextraktion: Sie können Bilder aus PDF-Dokumenten in verschiedenen Formaten wie JPEG oder PNG extrahieren.
- Tabellenextraktion: Sie können auch Tabellen aus PDF-Dokumenten extrahieren.
In dieser Rezension konzentrieren wir uns vor allem auf die Extraktions- und Analysefunktionen der Bibliothek. Für eine ausführliche Bewertung der Funktionen zum Aufteilen, Zusammenführen und Seitenmanagement klicken Sie bitte hier.
Erste Schritte mit PyMuPDF
Sie benötigen Python Version 3.8.0 oder höher, um PyMuPDF zu installieren und zu verwenden. Installieren Sie also zuerst Python und verwenden Sie dann die folgenden Befehle, um PyMuPDF mit pip und virtueller Umgebung auf Ihrem Computer zu installieren.
Linux
python -m venv pymupdf-venv
. pymupdf-venv/bin/activate
pip install pymupdf
MacOS
python -m venv pymupdf-venv
. pymupdf-venv/bin/activate
pip install pymupdf
Windows
python -m venv pymupdf-venv
.\pymupdf-venv\Scripts\activate
pip install pymupdf
Text aus PDF extrahieren
Sie können die PyMuPDF-Bibliothek in Python verwenden, um Text aus einem PDF-Dokument zu extrahieren und Textanalysen durchzuführen, z. B. das Zählen von Wörtern, indem Sie einfach die in der Bibliothek bereitgestellten Funktionen verwenden, wie im folgenden Code gezeigt:
Ausgabe
Das folgende Bild zeigt den extrahierten Text und die Anzahl der Wörter in der PDF-Datei:
Bilder aus PDF extrahieren
Wir können die PyMuPDF-Bibliothek verwenden, um Bilder aus einem PDF-Dokument in Python zu extrahieren. Der folgende Codeausschnitt öffnet die angegebene PDF-Datei, extrahiert Bilder aus der PDF und speichert sie im aktuellen Arbeitsverzeichnis:
Ausgabe
Nachfolgend sehen Sie das aus dem PDF-Dokument extrahierte PNG-Bild
Tabellen aus PDF extrahieren
Wir können auch die PyMuPDF-Bibliothek verwenden, um ein PDF-Dokument zu verarbeiten und Tabellen daraus zu extrahieren. Sehen Sie sich den folgenden Codeausschnitt an, der die angegebene PDF-Datei öffnet und Tabellen aus dem PDF-Dokument extrahiert:
Ausgabe
Der folgende Screenshot zeigt die aus dem PDF-Dokument extrahierte Tabelle:
Text in PDF einfügen
Der folgende Python-Codeausschnitt demonstriert die Verwendung der PyMuPDF-Bibliothek zum Einfügen von Text in eine PDF-Datei und zum Speichern der geänderten PDF-Datei als text.pdf:
Ausgabe
Der mit dem obigen Code eingefügte Text wird im unten angegebenen roten Feld hervorgehoben:
PDF-Texterkennung mittels OCR mit PyMuPDF
We will perform OCR on the PDF file containing the following image:Ausgabe
Das folgende Bild zeigt den aus dem Bild extrahierten Text in der bereitgestellten PDF-Datei:
Abschluss
Zusammenfassend lässt sich sagen, dass PyMuPDF ein professionelles Tool mit einigen klaren Stärken und Schwächen ist. Es eignet sich hervorragend für Aufgaben wie OCR und Textextraktion, was es für die Verarbeitung von Text in PDFs wertvoll macht.
Allerdings ist es nicht so gut geeignet, um Tabellen aus PDFs zu extrahieren, insbesondere wenn PDFs eine komplexe Struktur oder mehr Seiten haben, was für manche Benutzer ein Nachteil sein kann. Außerdem kann es in bestimmten Situationen zusätzliche Bibliotheken wie Pandas und Tesseract OCR-Sprachdatendateien erfordern, was die Verwendung komplexer macht. Trotz dieser Einschränkungen bleibt PyMuPDF eine robuste Wahl für die Arbeit mit Text in PDFs.