PDF-Tabellenauszug

Der PDF-Tabellenextraktor wurde als neues Tool erstellt, um diesem Bedarf gerecht zu werden.

Warenbezeichnung

Die Bibliothek ermöglicht die Extraktion von Tabellenstrukturen aus einer Reihe von Seiten innerhalb eines PDF

Es enthält eine Liste von Elementen, die Textzeilen oder Tabellen enthalten können.

Die Tabellen sind in zwei Dimensionen gegliedert, bestehend aus einzelnen Zellen, auf die zugegriffen werden kann, um ihren Inhalt abzurufen.

Code-Beschreibung

Mit der Version 3.0 der Bibliothek wird eine geeignetere Strategie zur Bestimmung von Tabellenzellenbereichen verfolgt.

Eine Art Kantenerkennung wird angewendet, aber besser geeignet für perfekt horizontale und vertikale Linien.

Nach dem Erhalt der Tabellenkanten wird eine zusätzliche Verarbeitung durchgeführt, und die Standorte jeder Zelle werden ermittelt, gefolgt von dem Text, der in jeder dieser Zellen enthalten ist.

Dies scheint die endgültige Version zu sein, bis die Aufdeckung und Sammlung von ungedeckten Fällen und die Fähigkeit, sie ordnungsgemäß abzudecken.

Fenster

PDF-Tabellenauszug v1.0 (2024)

Herunterladen

PDF-Tabellenauszug v2.0 (2024-2025)

Herunterladen

PDF-Tabellenauszug v3.0 (2025)

Herunterladen

Fassungen

image

Unter Nutzung der für die ChessPdfBrowser-Anwendung programmierten Klassen, die eine Anwendung ist, die Schachspiele aus PDFs scannt und extrahiert, erstellte ich eine Beta-Version der Bibliothek zum Extrahieren von Texten aus PDFs, einschließlich tabellarischer Elemente

Die Bibliothek scannt die angegebenen Seiten und extrahiert ihren Text. Beim Extrahieren des Textes sucht sie nach tabellarischen Mustern und extrahiert sie in einem rechteckigen Array-Format

Ich hoffe, dass dies für jemanden nützlich sein wird

image

Ich habe Zugriff auf mehrere PDFs mit Tabellen, mit denen ich experimentieren kann

Mir ist aufgefallen, dass v1.0 der Bibliothek nicht sehr vielseitig ist; es funktioniert gut mit einigen PDFs, aber nicht mit anderen

Die neue Bibliotheksversion führt mehrere Einstellungen basierend auf Test und Fehler mit den Test-PDFs ein.

Jede Einstellung kann gut mit bestimmten PDFs und schlecht mit anderen funktionieren.

Ziel der neuen Version ist es, Tabellen unter Verwendung aller erstellten Einstellungen zu extrahieren und eine optimale Ergebniskombination durch die Implementierung eines Eignungs-Selektors zu entwickeln.

Dies führt nicht immer zu einer perfekten Extraktion, aber es kann ein guter Anfang sein


Wenn keine der Einstellungen zu einer günstigen Tabellenextraktion führen, zögern Sie nicht, mich über die Möglichkeit des Hinzufügens einer neuen Einstellung zu kontaktieren, die mit Ihrem Tisch funktioniert.

image
image

Die neue Version der Bibliothek erscheint mit der Absicht, die Tabellenextraktion zu verbessern.


Die für diese Version vorgeschlagene Verbesserung ist es, Tabellenkanten zu erkennen, bevor Sie irgendeine Verarbeitung auf den Texten vornehmen, und die Texte jeder Zelle zu extrahieren, die ihren Standort a priori kennt.

Die Kanten werden durch die Anwendung von grundlegenden Korrelationen von perfekt horizontalen und vertikalen Linien extrahiert, und mit ein wenig zusätzlicher Verarbeitung können komplette Tischkanten extrahiert werden.

Sobald die Kanten erhalten sind, wird ein Graph mit den sofortigen Verbindungen jedes Wirbels erzeugt, und durch das Durchqueren dieses Graphs können die Bereiche der Tabellenzellen wiederhergestellt werden.


Die Bibliothek gibt eine geordnete Mischung aus Tabellen und Absätzen zurück, die nicht in einer Tabelle sind und versuchen, die Reihenfolge im PDF-Layout zu respektieren.

Der Parser kann Layouts theoretisch in einer oder mehreren Spalten oder einer bestimmten Kombination erkennen, die der Absatzparser mit etwas Glück ableiten wird.

Dies sollte ohne zusätzliche Eingriffe in die Anrufe geschehen, einfach durch die Verwendung der Standard-Konstruktoren.

Die anderen Parser-Konstruktoren nehmen Konfigurationsobjekte mit vielen Parametern, also wenn der Parser nicht perfekt mit Ihrem PDF funktioniert, ist es durchaus möglich, dass er es "einfach" beheben kann, indem er dieses Konfigurationsobjekt tweakt.

Es ist eine schwierige Aufgabe, wenn Sie nicht der Bibliotheksentwickler sind, also bin ich bereit, diese Konfiguration zu optimieren, falls die Bibliothek nicht perfekt mit Ihrem PDF funktioniert. (frojasg1@hotmail.com)

Downloads