PDF’s zijn een veelgebruikte manier om tekst te delen. PDF staat voor Portable Document Format en gebruikt de bestandsextensie .pdf. Het is in het begin van de jaren negentig gemaakt door Adobe Systems.

Het lezen van PDF-documenten met behulp van python kan u helpen bij het automatiseren van een breed scala aan taken.

In deze tutorial leren we hoe we tekst uit een PDF bestand kunnen halen in Python.

Laten we beginnen.

Tekst lezen en extraheren uit een PDF-bestand in Python

Voor deze tutorial maken we een voorbeeld-PDF van 2 pagina’s. U kunt dit doen met elke Word processor zoals Microsoft Word of Google Docs en het bestand opslaan als PDF.

Tekst op pagina 1:

Hello World. This is a sample PDF with 2 pages. This is the first page. 

Tekst op pagina 2:

This is the text on Page 2. 

PyPDF2 gebruiken om PDF tekst te extraheren

U kunt PyPDF2 gebruiken om tekst uit een PDF te extraheren. Laten we eens kijken hoe het werkt.

1. Installeer het pakket

Om PyPDF2 op uw systeem te installeren, voert u het volgende commando in uw terminal in. U kunt meer lezen over de pip package manager.

pip install pypdf2
Pypdf
Pypdf

2. Importeer PyPDF2

Open een nieuw python-notebook en begin met het importeren van PyPDF2.

import PyPDF2

3. Open de PDF in read-binary mode

Begin met het openen van de PDF in read binary mode met de volgende regel code:

pdf = open('sample_pdf.pdf', 'rb')

Dit maakt een PdfFileReader-object voor onze PDF en slaat het op in de variabele ‘pdf’.

4. Gebruik PyPDF2.PdfF2. Gebruik PyPDF2.PdfFileReader() om tekst te lezen

Nu kunt u de PdfFileReader() methode van PyPDF2 gebruiken om het bestand te lezen.

pdfReader = PyPDF2.PdfFileReader(pdf)

Om de tekst van de eerste pagina van de PDF te krijgen, gebruikt u de volgende regels code:

page_one = pdfReader.getPage(0)print(page_one.extractText())

We krijgen de uitvoer als:

Hello World. !This is a sample PDF with 2 pages. !This is the first page. !Process finished with exit code 0

Hier hebben we de methode getPage gebruikt om de pagina als een object op te slaan. Vervolgens hebben we de methode extractText() gebruikt om de tekst uit het pagina-object te halen.

De tekst die we krijgen is van het type String.

Ook om de tweede pagina uit de PDF te halen, gebruiken we:

page_one = pdfReader.getPage(1)print(page_one.extractText())

We krijgen de uitvoer als :

This is the text on Page 2. 

Complete code om PDF-tekst te lezen met PyPDF2

De complete code van dit gedeelte staat hieronder:

import PyPDF2pdf = open('sample_pdf.pdf', 'rb')pdfReader = PyPDF2.PdfFileReader(pdf)page_one = pdfReader.getPage(0)print(page_one.extractText())

Als u merkt dat de opmaak van de eerste pagina in de bovenstaande uitvoer een beetje afwijkt. Dit komt omdat PyPDF2 niet erg efficiënt is in het lezen van PDF’s.

Gelukkig heeft Python een beter alternatief voor PyPDF2. Daar gaan we nu naar kijken.

PDFplumber gebruiken om tekst te extraheren

PDFplumber is een ander programma dat tekst uit een PDF kan halen. Het is krachtiger dan PyPDF2.

1. Installeer het pakket

Laten we beginnen met het installeren van PDFplumber.

pip install pdfplumber
Pdfplumber
Pdfplumber

2. Importeer pdfplumber

Start met het importeren van PDFplumber met de volgende regel code :

import pdfplumber

3. PDFplumber gebruiken om pdfs te lezen

U kunt PDFs gaan lezen met PDFplumber met het volgende stukje code:

with pdfplumber.open("sample_pdf.pdf") as pdf: first_page = pdf.pages print(first_page.extract_text())

Hiermee wordt de tekst van de eerste pagina van onze PDF opgehaald. De uitvoer komt als:

Hello World. This is a sample PDF with 2 pages. This is the first page. Process finished with exit code 0

U kunt dit vergelijken met de uitvoer van PyPDF2 en zien hoe PDFplumber beter is als het gaat om opmaak.

PDFplumber biedt ook opties om andere informatie uit de PDF te halen.

U kunt bijvoorbeeld .page_number gebruiken om het paginanummer te krijgen.

print(first_page.page_number)

Uitvoer :

Geef een antwoord

Het e-mailadres wordt niet gepubliceerd.