W tym artykule dowiesz się, jak wyodrębnić tabele z plików PDF za pomocą Python. PDF to popularny format udostępniania danych, jednak wyodrębnianie tabel z pliku PDF może być trudnym zadaniem. Dostępnych jest kilka bibliotek Python, które mogą nam pomóc w tym zadaniu. Nadal może brakować dokładnej ekstrakcji danych.
Dowiedzmy się więc, jak wyodrębnić dane tabelaryczne z pliku PDF z dużą dokładnością w kilku wierszach kodu. Pod koniec tego samouczka będziesz w stanie wyodrębnić tabele z plików PDF za pomocą Python i manipulować nimi w razie potrzeby.
- Biblioteka Python do wyodrębniania tabel PDF
- Wyodrębnij dane z tabel PDF w Python
- Narzędzie online do wyodrębniania tabel PDF
Biblioteka Python do wyodrębniania tabel z PDF
Do wyodrębnienia danych z tabel w plikach PDF użyjemy Aspose.PDF for Python. Jest to potężna biblioteka Python z wieloma funkcjami do przetwarzania i manipulowania plikami PDF. Możesz zainstalować Aspose.PDF dla języka Python za pomocą następującego polecenia pip.
pip install aspose-pdf
Wyodrębnij tabelę z pliku PDF w Python
Poniżej przedstawiono kroki, aby wyodrębnić dane z tabel w pliku PDF za pomocą języka Python.
- Załaduj plik PDF przy użyciu klasy Document.
- Uzyskaj odniesienie do strony w formacie PDF, na której znajduje się tabela.
- Zainicjuj obiekt TableAbsorber i odwiedź wybraną stronę za pomocą metody TableAbsorber.visit(Page).
- W pętli przejrzyj listę tabel w kolekcji TableAbsorber.tablelist.
- Dla każdej tabeli wykonaj iterację w kolekcji wierszy w pliku AbsorbedTable.rowlist.
- Dla każdego wchłoniętego wiersza wykonaj iterację w kolekcji komórek w pliku AbsorbedRow.celllist.
- Na koniec przejrzyj kolekcję fragmentów tekstu każdej wchłoniętej komórki i wydrukuj tekst.
Poniższy przykładowy kod pokazuje, jak wyodrębnić tekst z tabeli PDF w języku Python.
import aspose.pdf as pdf
# Załaduj plik PDF
pdfDocument = pdf.Document("input.pdf")
# Zainicjuj obiekt TableAbsorber
tableAbsorber = pdf.text.TableAbsorber()
# Przeanalizuj wszystkie tabele na pierwszej stronie
tableAbsorber.visit(pdfDocument.pages[1])
# Uzyskaj odwołanie do pierwszej tabeli
absorbedTable = tableAbsorber.table_list[0]
# Iteruj przez wszystkie wiersze w tabeli
for pdfTableRow in absorbedTable.row_list:
# Iteruj przez wszystkie kolumny w wierszu
for pdfTableCell in pdfTableRow.cell_list:
# Pobierz fragmenty tekstu
textFragmentCollection = pdfTableCell.text_fragments
# Iteruj po fragmentach tekstu
for textFragment in textFragmentCollection:
# Wydrukuj tekst
print(textFragment.text)
Narzędzie online do wyodrębniania tabel PDF
Możesz także wypróbować nasze bezpłatne narzędzie online, PDF table extractor, aby wyodrębnić tabele z plików PDF, które jest oparte na Aspose.PDF for Python.
Korzystaj bezpłatnie z biblioteki Python PDF
Możesz uzyskać darmową tymczasową licencję i bez ograniczeń wyodrębniać dane z tabel w plikach PDF.
Przeglądaj bibliotekę PDF w języku Python
Możesz dowiedzieć się więcej o bibliotece PDF w Python, korzystając z dokumentacji. Możesz także zamieścić swoje pytania na naszym forum.
Wniosek
W tym artykule nauczyłeś się, jak wyodrębniać dane z tabel w pliku PDF za pomocą Python. Możesz użyć tego samego kodu z niewielkimi modyfikacjami, aby wyodrębnić tabele ze wszystkich stron w pliku PDF. Podobnie możesz wyodrębnić dane ze wszystkich tabel lub określonej tabeli na stronie. Po prostu zainstaluj Aspose.PDF for Python w swojej aplikacji i poznaj szybki i łatwy sposób wydobywania danych tabelarycznych z plików PDF.