Extrahieren Sie PDF-Tabellen in Python

In diesem Artikel erfahren Sie, wie Sie mit Python Tabellen aus PDF Dateien extrahieren. PDF ist ein beliebtes Format zum Teilen von Daten, jedoch kann das Extrahieren von Tabellen aus einem PDF eine herausfordernde Aufgabe sein. Es sind mehrere Python Bibliotheken verfügbar, die uns bei dieser Aufgabe helfen können. Dennoch könnte eine genaue Extraktion der Daten fehlen.

Lassen Sie uns also herausfinden, wie Sie tabellarische Daten mit hoher Genauigkeit innerhalb weniger Codezeilen aus PDF extrahieren können. Am Ende dieses Tutorials werden Sie in der Lage sein, Tabellen aus PDF Dateien mit Python zu extrahieren und sie nach Bedarf zu bearbeiten.

Python Bibliothek zum Extrahieren von Tabellen aus PDF

Um Daten aus den Tabellen in PDF Dateien zu extrahieren, verwenden wir Aspose.PDF for Python. Es ist eine leistungsstarke Python Bibliothek mit einer Reihe von Funktionen für die PDF-Verarbeitung und -Manipulation. Sie können Aspose.PDF for Python mit dem folgenden Pip-Befehl installieren.

pip install aspose-pdf

Extrahieren Sie eine Tabelle aus PDF in Python

Im Folgenden sind die Schritte zum Extrahieren von Daten aus Tabellen in einer PDF-Datei mit Python aufgeführt.

  • Laden Sie die PDF-Datei mit der Document Klasse.
  • Rufen Sie die Referenz der Seite im PDF-Format ab, auf der sich die Tabelle befindet.
  • Initialisieren Sie das TableAbsorber Objekt und besuchen Sie die ausgewählte Seite mit der TableAbsorber.visit(Page)-Methode.
  • Iterieren Sie in einer Schleife durch die Liste der Tabellen in der TableAbsorber.tablelist-Sammlung.
  • Durchlaufen Sie für jede Tabelle die Sammlung von Zeilen in AbsorbedTable.rowlist.
  • Durchlaufen Sie für jede absorbierte Zeile die Sammlung von Zellen in AbsorbedRow.celllist.
  • Durchlaufen Sie schließlich die Textfragmentsammlung jeder absorbierten Zelle und drucken Sie den Text aus.

Das folgende Codebeispiel zeigt, wie Text aus einer PDF-Tabelle in Python extrahiert wird.

import aspose.pdf as pdf

# PDF-Datei laden
pdfDocument = pdf.Document("input.pdf")

# TableAbsorber Objekt initialisieren
tableAbsorber =  pdf.text.TableAbsorber()

# Analysieren Sie alle Tabellen auf der ersten Seite
tableAbsorber.visit(pdfDocument.pages[1])

# Holen Sie sich eine Referenz der ersten Tabelle
absorbedTable = tableAbsorber.table_list[0]

# Durchlaufen Sie alle Zeilen in der Tabelle
for pdfTableRow in absorbedTable.row_list:
    
    # Durchlaufen Sie alle Spalten in der Zeile
   for pdfTableCell in pdfTableRow.cell_list:
        
        # Holen Sie sich die Textfragmente
        textFragmentCollection = pdfTableCell.text_fragments
        
        # Iteriere durch die Textfragmente
       for textFragment in textFragmentCollection:
            
            # Drucken Sie den Text aus
            print(textFragment.text)
            

Online-Tool zum Extrahieren von PDF-Tabellen

Sie können auch unser kostenloses Online-Tool PDF-Tabellenextraktor ausprobieren, um Tabellen aus PDF Dateien zu extrahieren, das auf Aspose.PDF for Python basiert.

Verwenden Sie die kostenlose Python-PDF-Bibliothek

Sie können eine kostenlose temporäre Lizenz erhalten und Daten aus Tabellen in PDF Dateien ohne Einschränkungen extrahieren.

Erkunden Sie die Python-PDF-Bibliothek

Weitere Informationen zur Python-PDF-Bibliothek finden Sie in der Dokumentation. Außerdem können Sie Ihre Fragen in unserem Forum posten.

Abschluss

In diesem Artikel haben Sie gelernt, wie Sie mit Python Daten aus Tabellen in einem PDF extrahieren. Sie können denselben Code mit kleinen Änderungen verwenden, um Tabellen aus allen Seiten in einer PDF-Datei zu extrahieren. Ebenso können Sie Daten aus allen Tabellen oder einer bestimmten Tabelle auf einer Seite extrahieren. Installieren Sie einfach Aspose.PDF for Python in Ihrer Anwendung und erleben Sie eine schnelle und einfache Möglichkeit, tabellarische Daten aus PDF Dateien zu extrahieren.

Siehe auch