Logo Zéphyrnet

Bibliothèque PYPDF2 : comment pouvez-vous travailler avec des fichiers PDF en Python ?

Date :

L'extraction de texte à partir d'un PDF à l'aide de PyPDF2 est difficile car la prise en charge de l'extraction de texte est limitée. Le retour du code ne sera pas dans un format approprié. Vous pouvez obtenir une série de caractères de saut de ligne en raison de la prise en charge limitée de PyPDF2.

De nombreuses opérations peuvent être effectuées sur les fichiers PDF à l'aide du module PyPDF2, notamment :

Si vous travaillez avec des factures et des reçus ou si vous vous souciez de la vérification d'identité, consultez Nanonets ROC en ligne or Extracteur de texte PDF pour extraire du texte de documents PDF gratuitement. Cliquez ci-dessous pour en savoir plus sur Solution d'automatisation d'entreprise Nanonets.


Autres tutoriels PyPDF2

Comment faire pivoter les pages d'un fichier PDF ?

Le module Python PyPDF2 est une bibliothèque utilisée pour manipuler des fichiers PDF. Il est très facile à utiliser et est disponible pour de nombreuses plateformes différentes.

Ici, nous allons voir comment faire pivoter les pages d'un fichier pdf. Enregistrez le PDF dans un autre fichier et exécutez le code suivant :

import PyPDF2
pdf_in = open('original.pdf', 'rb')
pdf_reader = PyPDF2.PdfFileReader(pdf_in)
pdf_writer = PyPDF2.PdfFileWriter()
for pagenum in range(pdf_reader.numPages):
page = pdf_reader.getPage(pagenum)
page.rotateClockwise(180)
pdf_writer.addPage(page)
pdf_out = open('rotated.pdf', 'wb')
pdf_writer.write(pdf_out)
pdf_out.close()
pdf_in.close()

Comment fusionner des fichiers PDF ?

Après avoir numérisé plusieurs pages d'un document ou stocké de nombreuses pages en tant que documents distincts sur votre ordinateur, la fusion de fichiers PDF est souvent nécessaire.

De nombreux programmes, dont Adobe et des applications en ligne, peuvent vous aider à accomplir cette tâche rapidement. Cependant, la plupart d'entre eux sont à vendre ou n'offrent pas suffisamment de mesures de sécurité.

Ouvrez votre éditeur préféré, puis créez un nouveau fichier appelé "pdfMerger.py". Assurez-vous que le programme Python se trouve dans le même répertoire que les fichiers PDF qui seront joints.

Vous pouvez combiner deux fichiers PDF ou plus en utilisant le bloc de code suivant :

from PyPDF2 import PdfFileMerger, PdfFileReader
merger = PdfFileMerger()
merger.append(PdfFileReader(open(filename1, 'rb')))
merger.append(PdfFileReader(open(filename2, 'rb')))
merger.write("merged.pdf")

Le code ci-dessus semble assez simple, mais que se passe-t-il si vous souhaitez combiner plus de deux fichiers ? Pour chaque fichier que vous souhaitez ajouter, il faudrait répéter la ligne 3, ce qui rendrait votre demande assez longue. Dans ce cas, une boucle for peut être utilisée.

Une autre méthode pour combiner plusieurs fichiers PDF est illustrée dans le code suivant.

Comment diviser les pages d'un fichier PDF ?

Pour diverses raisons, vous souhaiterez souvent extraire une page spécifique d'un gros fichier PDF ou combiner plusieurs fichiers PDF en un seul. Cela peut être accompli avec certains logiciels d'édition PDF. Néanmoins, vous constaterez peut-être que les fonctionnalités de fractionnement et de fusion ne sont généralement pas incluses dans la version gratuite ou que le traitement d'autant de pages ou de fichiers les rend trop laborieux. Dans cet article, je vais partager un script Python simple que vous pouvez utiliser pour diviser ou combiner plusieurs fichiers PDF.

L'utilisation de PdfFileReader pour lire le fichier d'origine vous permettra d'accéder à une page spécifique par son numéro de page lorsque vous souhaitez extraire une page particulière du fichier PDF et la créer en tant que fichier PDF séparé (le numéro de page commence à partir de 0). La fonction d'ajout de page de PdfFileWriter vous permet d'ajouter une page PDF à un tout nouvel objet PDF et de l'enregistrer.

Voici un exemple de code qui sépare la première page du fichier1.pdf en un fichier PDF distinct appelé première page.pdf.

from PyPDF2 import PdfFileWriter, PdfFileReader
input_pdf = PdfFileReader("file1.pdf")
output = PdfFileWriter()
output.addPage(input_pdf.getPage(0))
with open("first_page.pdf", "wb") as output_stream:
output.write(output_stream)

Comment fusionner les pages d'un fichier PDF ?

Vous pouvez utiliser PdfFileMerger pour combiner plusieurs fichiers PDF en un seul document. Même si vous pouvez également utiliser PdfFileWriter pour ce faire, la fusion de pages sans les modifier au préalable rend l'utilisation de PdfFileMerger plus simple.

L'exemple de code qui utilise la méthode d'ajout de PdfFileMerger pour ajouter plusieurs fichiers PDF et les écrire dans un seul fichier appelé merged est présenté ci-dessous.

from PyPDF2 import PdfFileReader, PdfFileMerger
pdf_file1 = PdfFileReader("file1.pdf")
pdf_file2 = PdfFileReader("file2.pdf")
output = PdfFileMerger()
output.append(pdf_file1)
output.append(pdf_file2)
with open("merged.pdf", "wb") as output_stream:
output.write(output_stream)

Si vous souhaitez ajouter certaines pages de votre fichier d'origine au nouveau fichier PDF, vous pouvez utiliser l'argument pages de la fonction append pour donner un tuple contenant les numéros de page de début et de fin.

Si vous souhaitez spécifier où vous voulez que vos pages aillent, vous devez utiliser la fonction de fusion car la fonction d'ajout ajoutera toujours de nouvelles pages à la fin. Il vous permet de sélectionner l'emplacement de la page sur laquelle vous souhaitez insérer de nouvelles pages.

Cryptage du fichier PDF

Un fichier PDF peut être crypté à l'aide d'un mot de passe ou d'un certificat numérique. La méthode de cryptage est choisie par l'utilisateur lors de la création du fichier. Un fichier PDF protégé par mot de passe peut être ouvert, modifié et imprimé par toute personne connaissant le mot de passe. Il ne peut pas être ouvert ou modifié par quelqu'un qui ne connaît pas le mot de passe. Un document signé numériquement est également protégé contre toute modification non autorisée. Néanmoins, il comprend également une signature électronique qui peut être vérifiée par toute personne ayant accès au document original ou à sa signature numérique.

for page in range(pdf.getNumPages()):
pdfwrite.addPage(pdf.getPage(page))
pdfwrite.encrypt(user_pwd=password, owner_pwd=None,
use_128bit=True)
with open(outputpdf, 'wb') as fh:
pdfwrite.write(fh)

Vous pouvez protéger par mot de passe un fichier PDF en utilisant le code ci-dessus comme ceci :

Comment ajouter un filigrane à un fichier PDF ?

Un filigrane est une superposition de texte ou de graphique sur le devant de votre document. Il peut vous aider à protéger votre travail contre une utilisation non autorisée ou abusive et à montrer quels enregistrements ont été modifiés ou imprimés. Vous pouvez ajouter du texte et des graphiques pour créer des filigranes personnalisés pour vos documents.

Voici un extrait de code expliquant comment ajouter un filigrane à un fichier PDF :

import PyPDF2
pdf_file = "doc.pdf"
watermark = "watermark.pdf"
merged_file = "merged.pdf"
input_file = open(pdf_file,'rb')
input_pdf = PyPDF2.PdfFileReader(input_file)
watermark_file = open(watermark,'rb')
watermark_pdf = PyPDF2.PdfFileReader(watermark_file)
pdf_page = input_pdf.getPage(0)
watermark_page = watermark_pdf.getPage(0)
pdf_page.mergePage(watermark_page)
output = PyPDF2.PdfFileWriter()
output.addPage(pdf_page)
merged_file = open(merged_file,'wb')
output.write(merged_file)
merged_file.close()
watermark_file.close()
input_file.close()

Trois arguments doivent être soigneusement pris en compte lors de l'utilisation de la fonction de cryptage.

  • Le mot de passe utilisateur user pwd est utilisé pour limiter l'ouverture et la lecture des fichiers ;
  • Le mot de passe utilisateur est une étape en dessous du propriétaire pwd, str. Le fichier peut être ouvert sans aucune limitation lorsqu'il est donné. Le mot de passe propriétaire et le mot de passe utilisateur par défaut sont identiques s'ils ne sont pas fournis ;
  • Utilisez l'option booléenne 128 bits pour spécifier s'il faut ou non utiliser 128 bits pour un mot de passe. False indique qu'un mot de passe de 40 bits doit être utilisé ; Vrai est la valeur par défaut ;

Vous souhaitez automatiser les tâches manuelles répétitives ? Économisez du temps, des efforts et de l'argent tout en améliorant l'efficacité !


Conclusion

PyPDF2 est l'un des moyens les plus simples de convertir des fichiers PDF, et il est entièrement open source. Si vous êtes pressé de commencer, l'excellente documentation en ligne vous permettra d'être opérationnel en quelques minutes. Si vous avez des questions ou avez besoin de plus d'aide, la sympathique communauté PyPDF2 se fera un plaisir de vous offrir son aide. En plus d'être simple à utiliser, PyPDF2 est extrêmement léger - il n'a pas d'autres dépendances que Python (ce qui signifie qu'il fonctionnera sur presque toutes les plates-formes imaginables).

De plus, PyPDF2 est distribué sous une licence de style BSD, vous êtes donc libre de le regrouper avec votre logiciel si vous le souhaitez. En bref, c'est un outil génial pour manipuler les PDF, et nous recommandons aux développeurs Python de le vérifier.

FAQ

Python peut-il lire un PDF ?

Python n'a pas de support natif pour la lecture de fichiers PDF, donc ce n'est pas quelque chose que vous pourrez faire avec une seule ligne de code. Mais de nombreuses bibliothèques tierces permettent à Python de lire des fichiers PDF et de les convertir dans d'autres formats, tels que HTML ou texte brut.

Une autre question se pose ici si Python lit un PDF, alors :

Python peut-il également lire des fichiers Excel ?

Oui, Python peut lire les fichiers Excel. Pandas simplifier l'importation d'un fichier Excel dans Python. Vous devez utiliser read excel pour atteindre cet objectif.

Est-ce que PyPDF2 est Open Source ?

PyPDF2 est un logiciel open source sous licence LGPL.

En outre, PyPDF2 est disponible en téléchargement sous forme de code source. Il peut être installé à l'aide de pip ou en téléchargeant le fichier zip et en l'extrayant dans le répertoire de votre choix.

La bibliothèque PyPDF2 comprend plusieurs outils de ligne de commande qui peuvent être utilisés pour convertir des fichiers PDF dans d'autres formats. Ces outils sont installés avec le module Python lors de son installation.

Est-ce que PyPDF2 est sûr ?

PyPDF2 vise à fournir une interface Python pure pour libpdf (la bibliothèque de référence C++ PDF) plutôt que d'avoir un module d'extension C séparé lié à Python.

L'objectif principal de PyPDF2 est de permettre aux développeurs de créer plus facilement des applications PDF sans avoir à se soucier de l'installation d'un environnement de développement compliqué ou de la gestion de plusieurs versions de bibliothèques externes.

Oui, Excel peut extraire des données de PDF.

Excel est un excellent outil pour manipuler les données et est facile à utiliser. Il est également très puissant et peut être utilisé pour gérer de nombreux types de données différents.

De plus, Excel est un gros avantage car vous pouvez l'utiliser sur n'importe quelle plate-forme (Windows, Mac, Linux) et vous n'avez besoin d'aucun logiciel spécial.

Le processus d'extraction de données à partir d'un PDF n'est pas simple, mais nous vous montrerons comment le faire étape par étape.

L'extraction de texte à partir d'un PDF est difficile. Il y a plusieurs raisons à cela:

Le format PDF a été conçu pour être lu par des humains et non par des machines. Le format de document le plus populaire au monde possède de nombreuses fonctionnalités intéressantes qui facilitent la lecture, mais c'est un problème pour les ordinateurs.

Les PDF peuvent contenir n'importe quel contenu (texte, graphiques, images, etc.) et ils peuvent être disposés comme vous le souhaitez. Cela signifie qu'il n'existe aucun moyen standard d'extraire du texte d'un fichier PDF - chaque fichier a sa mise en page unique.

Le texte d'un PDF donné peut ne pas se trouver là où vous l'attendez ! Certains PDF ont des tables des matières ou des index contenant tout le texte du document ; d'autres ont des notes de bas de page ou des notes de fin ; d'autres ont des en-têtes et des pieds de page qui se répètent à intervalles réguliers ; d'autres utilisent des cadres ou des calques au lieu de pages (c'est rare).

Le texte peut être extrait de photographies à l'aide de la reconnaissance optique de caractères (OCR). Le logiciel OCR est ce qui accomplit cela. Le programme OCR Open Source le plus connu est le moteur OCR tesseract.

PyPDF2 n'est pas un programme OCR.

Qu'est-ce que l'OCR Python ?

OCR Python est une bibliothèque OCR complète écrite en Python pur. Il enveloppe le moteur OCR open source Tesseract et fournit une API simple à utiliser par les développeurs. OCR, reconnaissance optique de caractères, convertit les images de texte numérisées en texte numérique interrogeable.

OCR Python utilise la sortie de haute qualité de Tesseract comme base, et il peut être utilisé avec n'importe quel autre moteur OCR qui utilise les bibliothèques Leptonica ou Harp (comme GOCR).

Si vous souhaitez numériser des documents à l'aide de l'OCR, cette bibliothèque vous aidera rapidement et facilement.


nanonets API OCR et OCR en ligne avoir beaucoup intéressant cas d'utilisation tCela pourrait optimiser les performances de votre entreprise, réduire les coûts et stimuler la croissance. Découvre ça comment les cas d'utilisation de Nanonets peuvent s'appliquer à votre produit.


spot_img

Dernières informations

spot_img

Discutez avec nous

Salut! Comment puis-je t'aider?