PyMuPDF

 
 

Open-Source-Python-Bibliothek zum Verwalten von PDF-Metadaten

Probieren Sie PyMuPDF aus, eine kostenlose und Open-Source-Python-Bibliothek, um auf Metadaten von PDF-Dokumenten zuzugreifen und diese zu ändern.

Was ist PyMuPDF?

PyMuPDF, auch bekannt als Fitz, ist eine Open-Source-Python-Bibliothek, die viele Funktionen wie Parsen von PDFs, Teilen und Zusammenführen von PDFs usw., aber auf dieser Seite werden wir nur diskutieren, wie Python-Entwickler die PyMuPDF-Bibliothek verwenden können, um PDF-Metadaten-bezogene Aufgaben zu bewältigen, wie zum Beispiel:

  • PDF-Metadaten lesen: PyMuPDF unterstützt den Zugriff auf Metadaten von PDF-Dokumenten, die Informationen wie Autor, Titel, Betreff und Erstellungsdatum usw. enthalten.
  • PDF-Metadaten ändern: Die Bibliothek ermöglicht auch die Änderung von Metadaten von PDF-Dokumenten.
  • XML-Metadaten lesen: PDF-Dokumente enthalten auch XML-Metadaten, die nicht auf Standarddokumenteigenschaften wie Autor, Titel usw. beschränkt sind und zusätzliche Metadaten enthalten können. Mit PyMuPDF können Entwickler es auch lesen.
  • XML-Metadaten ändern: Entwickler können mithilfe der PyMuPDF-Bibliothek auch XML-Metadaten von PDFs ändern.
GitHub

GitHub-Statistiken

Name:
Sprache:
Sterne:
Gabeln:
Lizenz:
Das Repository wurde zuletzt aktualisiert unter

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 virtuelle Umgebung.

Linux


python -m venv pymupdf-venv
. pymupdf-venv/bin/activate
pip install pymupdf

Mac OS


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  

PDF-Metadaten lesen

Wir können Metadaten einer PDF-Datei mithilfe des metadata-Mitglieds der PyMuPDF-Bibliothek lesen, das den vollständigen Metadateninhalt des Dokuments enthält. Der folgende Codeausschnitt zeigt, wie man die Metadaten einer PDF-Datei vom metadata-Mitglied erhält:

Ausgabe

Der folgende Screenshot zeigt die mit PyMuPDF aus einem PDF abgerufenen Metadaten:

Bearbeiten Sie PDF-Metadaten

Wir können die Metadaten von PDFs mithilfe der PyMuPDF-Bibliothek bearbeiten, indem wir ein Wörterbuch mit den Feldern, die wir ändern möchten, zusammen mit ihren neuen Werten an die Methode set_metadata übergeben, wie im folgenden Codeausschnitt gezeigt:

Lesen Sie XML-Metadaten von PDFs

Mithilfe der PyMuPDF-Bibliothek können wir XML-Metadaten einer PDF-Datei abrufen. Wir verwenden die Methode get_xml_metadata, die die gesamten XML-Metadaten zurückgibt, wie im folgenden Codeausschnitt gezeigt:

Ausgabe

Der folgende Screenshot zeigt die XML-Metadaten, die mit PyMuPDF aus einer PDF-Datei abgerufen wurden:

XML-Metadaten von PDFs ändern

Mit der Methode set_xml_metadata der PyMuPDF-Bibliothek können wir die XML-Metadaten einer PDF festlegen oder ändern. Es ist nicht so einfach wie das Ersetzen der Metadaten auf Dokumentebene, da set_xml_metadata jede Zeichenfolge akzeptiert und die vollständigen XML-Metadaten durch die an sie übergebene Zeichenfolge ersetzt.

Um ein unbeabsichtigtes Löschen von Metadateninformationen zu vermeiden, rufen wir zunächst die vollständigen XML-Metadaten als String mit get_xml_metadata ab und verwenden dann zum Ersetzen die Methode replace des Strings Um schließlich die gewünschten Informationen zu erhalten, übergeben wir das komplette XML mit den geänderten Feldern an die Methode set_xml_metadata, die die gesamten XML-Metadaten des PDFs ändert. Weitere Informationen finden Sie im folgenden Codeausschnitt:

Abschluss

Zusammenfassend ist PyMuPDF ein großartiges Tool für Aufgaben im Zusammenhang mit der Metadatenmanipulation. Wir können die Metadateninformationen von PDFs einfach abrufen und ändern. Eine bemerkenswerte Schwäche liegt jedoch in der Methode set_xml_metadata. Diese Methode akzeptiert jede an sie übergebene Zeichenfolge und überschreibt damit das vorherige XML, was zu unbeabsichtigtem Informationsverlust führen kann. Um dieses Problem zu vermeiden, müssen Entwickler ihre Logik implementieren, um korrekte Änderungen in XML-Metadaten sicherzustellen.

Ähnliche Produkte

 Deutsch