Extrahujte text ze souboru PDF pomocí Pythonu

Extrahujte text ze souboru PDF pomocí Pythonu

Všichni musíte být obeznámeni s tím, co jsou soubory PDF. Ve skutečnosti jsou jedním z nejdůležitějších a nejrozšířenějších digitálních médií. PDF znamená Přenosný formát dokumentu . Používá .pdf rozšíření. Používá se ke spolehlivé prezentaci a výměně dokumentů, nezávisle na softwaru, hardwaru nebo operačním systému.

Budeme extrahovat text ze souborů pdf pomocí dvou knihoven Python, pypdf a PyMuPDF , v tomto článku.

Extrahování textu ze souboru PDF pomocí knihovny pypdf.

Balíček Python pypdf lze použít k dosažení toho, co chceme (extrakce textu), i když dokáže více, než potřebujeme. Tento balíček lze také použít ke generování, dešifrování a slučování souborů PDF. Poznámka: Další informace viz Práce se soubory PDF v Pythonu

Instalace

Chcete-li nainstalovat tento balíček, zadejte do terminálu níže uvedený příkaz.

pip install pypdf 

Příklad: Vstupní PDF: extrakt-pdf-text-python

Python3




# 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)>

Výstup:

extrakt-pdf-python

Pokusme se porozumět výše uvedenému kódu po částech:

reader = PdfReader('example.pdf') 
  • Vytvořili jsme objekt PdfReader třídy z pypdf modul.
  • The PdfReader class převezme požadovaný poziční argument cesty k souboru PDF.
print(len(reader.pages)) 
  • stránky vlastnost dává Seznam PageObjects . Takže zde můžeme použít vestavěné jen() funkce pythonu pro získání počtu stránek v souboru pdf.
page = reader.pages[0] 
  • Nyní jako čtenářských.stránek je seznam PageObjects , můžeme získat konkrétní Strana pdf klepnutím na index stránky. V seznamu python indexování začíná od 0, takže čtenář.stránky[0] nám dává první stránku souboru pdf.
text = page.extract_text() print(text) 
  • Objekt stránky má funkci extrakt_text() extrahovat text ze stránky pdf.

Extrahování textu ze souboru PDF pomocí knihovny PyMuPDF.

PyMuPDF je knihovna Pythonu, která podporuje formáty souborů jako XPS, PDF, CBR a CBZ. Nyní se však v tomto článku zaměříme na soubory PDF (Portable Document Format).

Instalace

pip install pymupdf pip install fitz 

Chcete-li extrahovat text z pdf, musíme provést následující kroky:

  1. Import knihovny
  2. Otevírání dokumentu
  3. Extrahování textu

Poznámka: Zde používáme sample.pdf; pro získání pdf použijte odkaz níže.

ukázka.pdf – Odkaz

1. Import knihovny

Python3




import> fitz>

2. Otevření dokumentu

Python3




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

Zde jsme vytvořili objekt tzv doc a název souboru by měl být řetězec Pythonu.

3. Extrahování textu

Python3




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

Zde jsme iterovali stránky v pdf a použili get_text() metoda pro extrahování každé stránky ze souboru.

Celý kód pro extrakci textu

Python3




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

Výstup:

Závěr

Viděli jsme dvě knihovny Pythonu, pypdf a PyMuPDF , který dokáže extrahovat text ze souboru PDF. Komentář k vaší preferované knihovně z výše uvedených dvou knihoven.