Ten krótki samouczek opisuje proces jak czytać tabelę PDF w Pythonie. Przedstawia wszystkie podstawowe informacje potrzebne do ustawienia środowiska programistycznego, sekwencję kroków do napisania aplikacji oraz przykładowy kod do wykonania wyodrębniania tabeli z PDF w Pythonie. Otrzymasz wskazówki, jak uzyskać dostęp do każdej komórki tabeli, a następnie pobrać wszystkie zawarte w niej dane.
Kroki, aby wyodrębnić dane tabeli z pliku PDF za pomocą Pythona
- Ustaw środowisko na użyj Aspose.PDF dla Pythona przez .NET, aby czytać tabele
- Załaduj źródłowy plik PDF, używając klasy Document mającej tabelę
- Utwórz instancję obiektu klasy TableAbsorber, aby odczytywać tabele z załadowanego pliku PDF
- Wybierz stronę i przeanalizuj wszystkie znajdujące się na niej tabele
- Uzyskaj dostęp do pierwszej tabeli i przeanalizuj wiersze i kolumny, aby pobrać wszystkie wystąpienia TextFragment w komórce
- Przeanalizuj wszystkie fragmenty tekstu i wyświetl tekst w każdym fragmencie
Te kroki wyjaśniają proces czytania tabeli PDF w Pythonie. Proces rozpoczyna się od załadowania pliku PDF, a następnie utworzenia obiektu TableAbsorber, który posiada metody odczytu tabel z pliku PDF. Po przeanalizowaniu wszystkich tabel na określonej stronie uzyskuje się dostęp do pierwszej tabeli z kolekcji, a następnie analizuje się każdy wiersz i kolumnę, aby uzyskać zbiór fragmentów tekstu do pobrania danych.
Kod do wyodrębnienia tabeli z pliku PDF za pomocą Pythona
import aspose.pdf as pdf | |
# Load the license | |
license = pdf.License() | |
license.set_license("Aspose.Total.lic") | |
# Load source PDF | |
pdfDocument = pdf.Document("PdfWithTable.pdf") | |
# Declare and initialize TableAbsorber object | |
tableAbsorber = pdf.text.TableAbsorber() | |
# Parse all the tables | |
tableAbsorber.visit(pdfDocument.pages[1]) | |
# Get a reference to the first table | |
absorbedTable = tableAbsorber.table_list[0] | |
# Iterate through all the rows | |
for pdfTableRow in absorbedTable.row_list: | |
# Iterate through all the columns | |
for pdfTableCell in pdfTableRow.cell_list: | |
# Fetch the text fragments | |
textFragmentCollection = pdfTableCell.text_fragments | |
# Iterate through the text fragments | |
for textFragment in textFragmentCollection: | |
# Display the text | |
print(textFragment.text) | |
print("Data read successfully from the table") |
Powyższy kod pokazuje, jak za pomocą pythona odczytać tabelę pdf i pobrać jej dane do przetworzenia. Kiedy wywołujemy metodę visit() w klasie TableAbsorber, wypełnia ona tablicę table_list, która jest używana do uzyskiwania dostępu do poszczególnych tabel. Każda tabela w kolekcji tabel ma właściwość row_list, która ma właściwość cell_list zapewniającą dostęp do kolekcji kolumn, a na końcu dochodzisz do właściwości text_fragments, aby uzyskać zbiór danych w określonej komórce.
Ten artykuł nauczył nas, że wyodrębnianie tabeli z PDF Python może być łatwe. Jeśli chcesz poznać proces odczytywania zakładek w pliku PDF, zapoznaj się z artykułem na stronie jak czytać zakładki w PDF za pomocą Pythona.