Denna korta handledning beskriver processen för hur man läser tabellen PDF i Python. Den presenterar all grundläggande information för att ställa in utvecklingsmiljön, en sekvens av steg för att skriva applikationen och en körbar exempelkod för att extrahera tabell från PDF i Python. Du kommer att få vägledning för att komma åt varje cell i tabellen och sedan hämta all data i den.
Steg för att extrahera tabelldata från PDF med Python
- Ställ in miljön på använd Aspose.PDF för Python via .NET för att läsa tabeller
- Ladda käll-PDF-filen med klassen Document med en tabell
- Skapa en instans av klassobjektet TableAbsorber för att läsa tabeller från den inlästa PDF-filen
- Välj en sida och analysera alla tabeller i den
- Gå till den första tabellen och analysera rader och kolumner för att hämta alla TextFragment-instanser i en cell
- Analysera alla textfragment och visa text i varje fragment
Dessa steg förklarar processen för att läsa PDF-tabell i Python. Processen påbörjas genom att ladda PDF-filen och sedan skapa TableAbsorber-objektet som har metoder för att läsa tabeller från en PDF-fil. När alla tabeller har tolkats på en viss sida nås den första tabellen från samlingen och sedan analyseras varje rad och kolumn för att få samlingen av textfragment i den för att hämta data.
Kod för att extrahera tabell från PDF med Python
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") |
Ovanstående kod visar att hur man använder python läser pdf-tabellen och hämtar dess data för bearbetning. När vi anropar metoden visit() i klassen TableAbsorber, fyller den arrayen table_list som används för att komma åt enskilda tabeller. Varje tabell i tabellsamlingen har row_list-egenskapen som har en cell_list-egenskap som ger tillgång till kolumnsamlingen och slutligen når du text_fragments-egenskapen för att få insamlingen av data i en viss cell.
Den här artikeln har lärt oss att extrahera tabell från PDF Python enkelt kan användas. Om du vill lära dig processen för att läsa bokmärken i en PDF, se artikeln om hur man läser bokmärken i PDF med Python.