Extraire une page d’un fichier PDF avec Python

Comment extraire une page d’un fichier PDF avec Python

Rédigé par AZYAT Abdelilah

L’objectif est de savoir comment extraire une page à partir d’un fichier PDF de 157 pages en utilisant le langage Python.

Tout d’abord, j’aimerais bien vous donnez un aperçu sur le type d’automatisation des tâches à réaliser avec le langage python sur la manipulation des documents PDF à l’aide du module PyPDF2. Pour plus de détails à propos de ce module, n’hésitez pas de consulter le lien suivant :

https://pypi.org/project/PyPDF2/

Les opérations qu’on peut faire avec ce module sont les suivants :

  • Extraction de texte à partir de PDF
  • Décryptage des PDF
  • Rédaction de PDF
  • Copier des pages
  • Rotation des pages
  • Pages superposées
  • Cryptage des PDF

Commençant par un premier exemple pour lire un fichier PDF et afficher le nombre de pages, ensuite un morceaux de texte à partir d’une page: 

import PyPDF2

pdfFile_object =
open(‘desparite-regionale.pdf’, ‘rb’)
pdfReader = PyPDF2.PdfFileReader(pdfFile_object)
print(pdfReader.numPages)  # to store the pages number of the document
pageObj = pdfReader.getPage(2# to get the page 2
print(pageObj.extractText())  # to extract text from page 2
pdfFile_object.close()

 

Notez bien qu’il faut installer d’abord module PyPDF2, par exemple pour Windows ; on peut utiliser la commande pip install PyPDF2.

L’exemple suivant contient 9 lignes de code (avec les commentaires) pour extraire une page, pour moi j’ai choisi la page 20 en utilisant le même module car le comptage de pages commence de zéro :

import PyPDF2
#   Extracting a page from PDF file containing 157 pages

objFile = open(‘desparite-regionale.pdf’, ‘rb’# open an existing pdf file in read binary mode
pdfReader = PyPDF2.PdfFileReader(objFile)
pdfWriter = PyPDF2.PdfFileWriter() 
# create a blank pdf document
pageObj = pdfReader.getPage(20# getting the page 20
pdfWriter.addPage(pageObj)  # add the page 20 to the blank document
pdfOutputFile = open(‘myPage21.pdf’, ‘wb’# oen the new document in write_binary mode
pdfWriter.write(pdfOutputFile)
pdfOutputFile.close()

On obtient une seule page enregistrée dans un fichier dont le format est PDF aussi et sauvegardé également dans le même dossier du projet.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *