Häufig verwendeter Python-PDF-Bibliotheksvergleich

Revision 2022.06.07: Eine Bibliothek eines Drittanbieters hinzugefügt borb. Der erste Entwurf wurde am 02.01.2021 geschrieben, borbnur wenige Monate nach der Veröffentlichung der Version 1.0; in weniger als zwei Jahren hat er fast 3.000 Likes auf Github.

PDF (Portable Document Format) ist ein tragbares Dokumentformat, das die Verbreitung von Dokumenten über Betriebssysteme hinweg erleichtert. PDF-Dokumente folgen einem Standardformat, daher gibt es viele Tools, die PDF-Dokumente bearbeiten können, und Python bildet da keine Ausnahme. Es gibt viele Python- Bibliotheken von Drittanbietern . In diesem Artikel werden Funktionen, Open-Source-Protokolle und Community-Aktivitäten verglichen, um die geeignete Bibliothek entsprechend den spezifischen Anforderungen auszuwählen.

Überblick

Der Funktionsvergleich gliedert sich in drei Aspekte 提取内容: , 操作页面, und 创建内容. Die ersten beiden sind Lese- und Schreibvorgänge für vorhandene PDF-Dokumente, und der letzte erstellt aus dem Inhalt ein neues Dokument. Im Hinblick auf die Aktualität wird im folgenden Vergleich die entsprechende aktuelle Version zum Zeitpunkt des Schreibens (2021.01) aufgeführt. borbZum Vergleich im Jahr 2022.06 neu hinzugefügt, der Zeitpunkt ist maßgebend.

  • 提取内容wie Text, Bilder, Metainformationen
  • 操作页面Bezieht sich insbesondere auf Vorgänge an vorhandenen Seiten wie Teilen, Zusammenführen, Zuschneiden, Drehen usw.
  • 创建内容Bezieht sich auf das Erstellen oder Ändern von Seiteninhalten wie Text, Bildern und Formen
Python-Bibliothek aktuelle Version Python-Version Open-Source-Vereinbarung das neueste Update Funktion: Inhalt extrahieren Funktion: Bedienseite Funktion: Inhalte erstellen Anmerkung
PyPDF2 1.26.0 2,6-3,6 modifiziertes BSD Vor 3 Jahren × PyPDF2Nicht mehr gepflegt, der Nachfolger PyPDF4 ( PyPDF , PyPDF2und PyPDF4die Quellenangabe hier ). Da PyPDF2es bekannter zu sein scheint, wird es als Eintrag aufgeführt.
pdfrw 0,4 2,6-3,6 MIT Vor 3 Jahren × Es kann selbst keine neuen Inhalte erstellen, ist aber integriert ReportLabund kann kompatibel ReportLabneue Seiten generieren
ReportLab 3.5.58 2,7, 3,6+ BSD sehr aktiv × × Open-Source-Version von ReportLab , professionelles Erstellen von PDF-Inhalten wie Text, Diagrammen usw.
pikepdf 2.2.4 2,7, 3,6+ MPL 2.0 sehr aktiv × C++-basiertes QPDF , Benchmarking PyPDF2und pdfrw; auf die unterste Ebene ausgerichtet
pdfplumber 0,5,25 3,6-3,8 MIT aktiv × × Basierend auf pdfminer.six; können neben Text auch Formen (Rechtecke, Linien/Kurven) und Tabellen geparst werden . Einen Vergleich mehrerer Python-Bibliotheken, die PDF-Tabellen extrahieren, finden Sie hier
pdfminer.six 20201018 3,6+ MIT Vor 2 Monaten × × Von der Community gepflegte Version von pdfminer , seit pdfminer2020 nicht mehr aktiv gepflegt
PyMuPDF 1.18.5 3,6+ GPL v3 sehr aktiv Basierend auf mupdf ; bekannt für seine Verarbeitungsgeschwindigkeit, siehe hier
brutal 2.0.27 3,6+ AGPL sehr aktiv Reine Python-Bibliothek, unterstützt das Lesen, Schreiben und Bearbeiten von PDF-Dokumenten und berücksichtigt sowohl einfache als auch fortgeschrittene Anwendungen

Rezension

  • PyPDF2pdfrwWährend die ersten beiden sich auf bestehende PDF-Vorgänge (Teilen, Zusammenführen, Drehen usw.) konzentrieren, werden die pikepdfWartungsarbeiten grundsätzlich eingestellt.
  • pdfplumberEs konzentriert sich pdfminer.sixauf die Extraktion von PDF-Inhalten wie Text (Position, Schriftart und Farbe usw.) und Form (Rechteck, gerade Linie, Kurve). Ersteres hat auch die Funktion, Tabellen zu analysieren.
  • ReportLabKonzentrieren Sie sich auf die Erstellung von PDF-Seiteninhalten (Texte, Grafiken, Tabellen usw.).
  • PyMuPDFUnd borbes unterstützt gleichzeitig das Lesen, Schreiben und PDF-Seitenoperationen mit den umfassendsten Funktionen. Unter ihnen ist esPyMuPDF vor allem für seine hohe Geschwindigkeit bekannt, eine neu entwickelte und gut angenommene Bibliothek mit unbegrenztem Potenzial. borbAllerdings handelt es sich bei beiden um GPLOpen-Source-Protokolle der Familie, die für die kommerzielle Nutzung nicht sehr geeignet sind*.

* Die freie Nutzung wird unterstützt, aber Programme, die Verweise darauf erfordern, müssen sich ebenfalls an die entsprechende Vereinbarung, also Open Source, halten. Wenn Sie Closed Source verwenden müssen, müssen Sie beim Autor eine kostenpflichtige kommerzielle Genehmigung beantragen.

Abschließend beendet die folgende Abbildung diesen Artikel.

Reifung




 Vergleich häufig verwendeter Python-PDF-Bibliotheken

Vollständige Zusammenfassung der Python-Operation PDF|pdfplumber&PyPDF2 bazyd

Guess you like

Origin blog.csdn.net/u013250861/article/details/131609801