logo

Wyodrębnij tekst z pliku PDF za pomocą Pythona

Wszyscy powinniście wiedzieć, czym są pliki PDF. W rzeczywistości są jednym z najważniejszych i najpowszechniej używanych mediów cyfrowych. PDF oznacza format dokumentu przenośnego . To używa .pdf rozszerzenie. Służy do niezawodnego prezentowania i wymiany dokumentów, niezależnie od oprogramowania, sprzętu czy systemu operacyjnego.

Wyciągniemy tekst z plików pdf za pomocą dwóch bibliotek Pythona, pypdf I PyMuPDF , w tym artykule.



Wyodrębnianie tekstu z pliku PDF za pomocą biblioteki pypdf.

Pakiet Pythona pypdf można wykorzystać do osiągnięcia tego, czego chcemy (ekstrakcja tekstu), chociaż może zrobić więcej, niż potrzebujemy. Pakiet ten może być również używany do generowania, deszyfrowania i łączenia plików PDF. Notatka: Aby uzyskać więcej informacji, zobacz Praca z plikami PDF w Pythonie

Instalacja

Aby zainstalować ten pakiet, wpisz poniższe polecenie w terminalu.

pip install pypdf>

Przykład: Wprowadź PDF: ekstrakt-pdf-text-python



Python3






przechodzenie przez drzewo binarne w ramach sprzedaży pocztowej

# importing required modules> from> pypdf>import> PdfReader> > # creating a pdf reader object> reader>=> PdfReader(>'example.pdf'>)> > # printing number of pages in pdf file> print>(>len>(reader.pages))> > # getting a specific page from the pdf file> page>=> reader.pages[>0>]> > # extracting text from page> text>=> page.extract_text()> print>(text)>

>

>

Wyjście:

ekstrakt-pdf-python

Spróbujmy zrozumieć powyższy kod fragmentami:

reader = PdfReader('example.pdf')>
  • Stworzyliśmy obiekt Czytnik PDF klasa z pypdf moduł.
  • The Czytnik PDF class pobiera wymagany argument pozycyjny ścieżki do pliku pdf.
print(len(reader.pages))>
  • strony Właściwość daje listę Obiekty strony . Zatem tutaj możemy skorzystać z wbudowanego tylko() funkcja Pythona, aby uzyskać liczbę stron w pliku pdf.
page = reader.pages[0]>
  • Teraz jako czytelnik.stron jest lista Obiekty strony , możemy uzyskać konkret Strona pliku PDF, dotykając indeksu strony. W Pythonie indeksowanie list zaczyna się od 0, więc czytelnik.strony[0] daje nam pierwszą stronę pliku pdf.
text = page.extract_text() print(text)>
  • Obiekt strony ma funkcję wyodrębnij_tekst() aby wyodrębnić tekst ze strony PDF.

Wyodrębnianie tekstu z pliku PDF przy użyciu biblioteki PyMuPDF.

PyMuPDF to biblioteka języka Python obsługująca formaty plików takie jak XPS, PDF, CBR i CBZ. Ale na razie w tym artykule skupimy się na plikach PDF (Portable Document Format).

Instalacja

pip install pymupdf pip install fitz>

Aby wyodrębnić tekst z pliku PDF, musimy wykonać następujące kroki:

  1. Importowanie biblioteki
  2. Dokument otwierający
  3. Wyodrębnianie tekstu

Notatka: Używamy tutaj pliku sample.pdf; aby pobrać plik PDF, skorzystaj z poniższego łącza.

próbka.pdf – Połączyć

1. Importowanie biblioteki

Python3


3 miesiące



import> fitz>

>

>

2. Dokument otwierający

Python3


znak tostring Java



doc>=> fitz.>open>(>'sample.pdf'>)>

>

>

Tutaj stworzyliśmy obiekt o nazwie doktor , a nazwa pliku powinna być ciągiem znaków Pythona.

komunikacja analogowa

3. Wyodrębnianie tekstu

Python3




for> page>in> doc:> >text>=> page.get_text()> >print>(text)>

>

>

Tutaj iterowaliśmy strony w formacie PDF i korzystaliśmy z pobierz_tekst() metoda wyodrębnienia każdej strony z pliku.

Cały kod, aby wyodrębnić tekst

Python3




import> fitz> doc>=> fitz.>open>(>'sample.pdf'>)> text>=> ''> for> page>in> doc:> >text>+>=>page.get_text()> print>(text)>

Zamień wszystko

>

>

Wyjście:

Wniosek

Widzieliśmy dwie biblioteki Pythona, pypdf I PyMuPDF , które mogą wyodrębnić tekst z pliku PDF. Skomentuj preferowaną bibliotekę z powyższych dwóch bibliotek.