Tento stručný návod popisuje proces jak číst tabulku PDF v Pythonu. Představuje všechny základní informace pro nastavení vývojového prostředí, sekvenci kroků pro psaní aplikace a spustitelný ukázkový kód pro extrahování tabulky z PDF v Pythonu. Získáte pokyny pro přístup ke každé buňce tabulky a poté načtení všech dat v ní.
Kroky k extrahování dat tabulky z PDF pomocí Pythonu
- Chcete-li číst tabulky, nastavte prostředí na použijte Aspose.PDF pro Python přes .NET
- Načtěte zdrojový soubor PDF pomocí třídy Document s tabulkou
- Vytvořte instanci objektu třídy TableAbsorber pro čtení tabulek z načteného souboru PDF
- Vyberte stránku a analyzujte všechny tabulky v ní
- Otevřete první tabulku a analyzujte řádky a sloupce, abyste načetli všechny TextFragment instance v buňce
- Analyzujte všechny fragmenty textu a zobrazte text v každém fragmentu
Tyto kroky vysvětlují proces čtení tabulky PDF v Pythonu. Proces je zahájen načtením souboru PDF a vytvořením objektu TableAbsorber, který má metody pro čtení tabulek ze souboru PDF. Jakmile jsou všechny tabulky analyzovány na konkrétní stránce, zpřístupní se první tabulka z kolekce a poté se analyzuje každý řádek a sloupec, aby se získala kolekce textových fragmentů pro načtení dat.
Kód pro extrahování tabulky z PDF pomocí Pythonu
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") |
Výše uvedený kód ukazuje, jak pomocí pythonu číst tabulku pdf a načítat její data ke zpracování. Když zavoláme metodu visit() ve třídě TableAbsorber, vyplní pole table_list, které se používá pro přístup k jednotlivým tabulkám. Každá tabulka v kolekci tabulek má vlastnost row_list, která má vlastnost cell_list poskytující přístup ke kolekci sloupců a nakonec se dostanete k vlastnosti text_fragments, abyste získali kolekci dat v konkrétní buňce.
Tento článek nás naučil, že extrahovat tabulku z PDF Pythonu lze snadno použít. Pokud se chcete naučit proces čtení záložek v PDF, přečtěte si článek na jak číst záložky v PDF pomocí Pythonu.