Test dans un environnement réel
Test en production sans filigrane.
Fonctionne partout où vous en avez besoin.
PDF(Format de document portable) est un format de fichier largement utilisé pour préserver la mise en page et le formatage des informations d'un document sur différentes plates-formes. Ils sont très populaires dans diverses industries en raison de leur capacité à conserver une apparence cohérente quel que soit l'appareil ou le système d'exploitation utilisé pour les ouvrir. Les PDF sont couramment utilisés pour partager des rapports, des factures, des formulaires, des livres électroniques, des données personnalisées et d'autres documents importants.
Travailler avec des fichiers PDF en Python est devenu un aspect crucial de nombreux projets. Python propose plusieurs bibliothèques qui simplifient la manipulation des fichiers PDF, facilitant l'extraction d'informations, la création de nouveaux documents, la fusion ou le fractionnement de documents existants et l'exécution d'autres tâches liées aux PDF.
Dans cet article, nous allons procéder à une comparaison complète de deux bibliothèques Python renommées conçues pour manipuler les fichiers PDF : PyPDF et IronPDF. En évaluant les caractéristiques et les capacités des deux bibliothèques, nous souhaitons fournir aux développeurs des informations précieuses pour les aider à prendre une décision éclairée sur celle qui répond le mieux à leurs besoins spécifiques en matière d'applications logicielles.
Ces bibliothèques offrent des outils robustes pour rationaliser le travail avec les PDF, permettant aux développeurs de gérer efficacement les documents PDF au sein de leurs applications Python. Nous allons donc nous plonger dans la comparaison et explorer les points forts de chaque bibliothèque pour faciliter vos tâches liées au format PDF.
PyPDF est une bibliothèque PDF purement Python qui fournit des fonctionnalités de base pour la lecture, l'écriture, le décryptage de fichiers PDF et la manipulation de documents PDF. Il permet aux développeurs d'extraire du texte et des images des PDF, de fusionner plusieurs fichiers PDF, de diviser des PDF volumineux en fichiers plus petits, etc. PyPDF est connu pour sa simplicité et sa facilité d'utilisation, ce qui en fait un choix approprié pour les tâches PDF simples.
Il offre un ensemble complet de fonctionnalités pour travailler avec des documents PDF, ce qui en fait un excellent choix pour un large éventail de tâches liées aux PDF.
PyPDF est une bibliothèque PDF Python capable des fonctionnalités suivantes :
IronPDF est une bibliothèque complète de manipulation de PDF pour Python, construite au-dessus de la bibliothèque .NET d'IronPDF. Il offre une API puissante avec des fonctionnalités avancées, telles que la conversion de HTML en PDF, la gestion des annotations PDF et des champs de formulaire, et l'exécution efficace d'opérations PDF complexes. IronPDF est privilégié pour les projets nécessitant un traitement PDF robuste, des performances et une prise en charge étendue des fonctionnalités.
IronPDF est une bibliothèque PDF Python capable de gérer les tâches de traitement des PDF de manière transparente. Il constitue une solution de manipulation des PDF fiable et riche en fonctionnalités pour les développeurs Python. Avec IronPDF, vous pouvez générer, modifier et extraire sans effort le contenu de plusieurs pages d'un PDF, ce qui en fait un excellent choix pour diverses applications liées aux PDF.
Voici les principales caractéristiques d'IronPDF :
Haute performance: Construit sur la bibliothèque .NET d'IronPDF, IronPDF offre une haute performance et une grande efficacité dans le traitement de fichiers PDF volumineux et d'opérations complexes.
L'article se lit désormais comme suit :
Créer un projet Python
Installation de PyPDF
Installation d'IronPDF
Création de documents PDF
Fusionner des fichiers PDF
Fractionnement des fichiers PDF
Extraction de texte à partir de fichiers PDF
Licences
Utilisation d'un environnement de développement intégré(L'IDE) pour les projets Python peut améliorer considérablement la productivité. Parmi les choix populaires, je vais utiliser PyCharm, qui se distingue par sa complétion intelligente du code, son débogage puissant et son intégration transparente avec les systèmes de contrôle de version. Si vous ne l'avez pas installé, vous pouvez le télécharger sur le site de JetBrains(https://www.jetbrains.com/pycharm/)ou vous pouvez utiliser n'importe quel IDE/éditeur de texte pour les programmes Python comme VS Code.
Pour créer un projet Python dans PyCharm :
Lancez PyCharm et cliquez sur "Créer un nouveau projet" sur l'écran d'accueil de PyCharm, ou allez dans Fichier > Nouveau projet dans le menu.
Choisissez l'interpréteur Python. Si vous n'avez pas configuré d'interprète, cliquez sur l'icône en forme de roue dentée et configurez-en un nouveau.
Sélectionnez l'emplacement et le modèle du projet.
Indiquez le nom et les paramètres du projet, puis cliquez sur Créer.
PyPDF, bibliothèque purement Python, peut être installée de plusieurs façons. Nous pouvons l'installer en utilisant l'Invite de commande et PyCharm.
Ouvrez l'invite de commande ou le terminal sur votre ordinateur.
:ProductInstall
Attendez que l'installation de PyPDF soit terminée. Vous devriez voir un message de succès indiquant que PyPDF a été installé.
Vous pouvez utiliser la même procédure pour installer PyPDF dans le terminal PyCharm.
Note: Python doit être ajouté à la variable d'environnement PATH du système.
Ouvrir l'IDE PyCharm.
Créez un nouveau projet Python ou ouvrez un projet existant.
Une fois dans le projet, cliquez sur Fichier dans le menu supérieur et sélectionnez Paramètres.
Dans la fenêtre de configuration, naviguez jusqu'à "Projet :
Dans la fenêtre de l'interprète Python, cliquez sur l'icône "+" pour ajouter un nouveau paquet.
Dans la fenêtre "Paquets disponibles", recherchez "PyPDF"
Sélectionnez "PyPDF" dans la liste et cliquez sur le bouton "Installer le paquet".
IronPDF for Python s'appuie sur la puissante technologie .NET 6.0. Par conséquent, pour utiliser IronPDF for Python de manière efficace, il est essentiel que le moteur d'exécution .NET 6.0 soit installé sur votre système. Les utilisateurs de Linux et de Mac peuvent avoir besoin de télécharger et d'installer .NET à partir du site officiel de Microsoft(https://dotnet.microsoft.com/en-us/download/dotnet/6.0) avant de commencer à travailler avec ce paquetage Python. La présence du moteur d'exécution .NET 6.0 permettra une intégration transparente et des performances optimales lors de l'utilisation d'IronPDF Python pour les tâches de traitement des PDF.
Ouvrez l'invite de commande ou le terminal sur votre ordinateur.
:PackageInstall
Ouvrez PyCharm IDE sur votre ordinateur.
Créez un nouveau projet Python ou ouvrez un projet existant.
Une fois dans le projet, cliquez sur "Fichier" dans le menu supérieur et sélectionnez "Paramètres".
Dans la fenêtre de configuration, naviguez jusqu'à "Projet :
Dans la fenêtre de l'interprète Python, cliquez sur l'icône "+" pour ajouter un nouveau paquet.
Dans la fenêtre "Paquets disponibles", recherchez "ironpdf
"
Sélectionnez "ironpdf
" dans la liste et cliquez sur le bouton "Installer le paquet".
Attendez que IronPDF se télécharge et s'installe. Un message de réussite s'affiche indiquant qu'IronPDF est installé.
Les deux bibliothèques sont maintenant installées et prêtes à l'emploi. Passons à la comparaison elle-même.
PyPDF fournit des capacités de base pour créer de nouveaux fichiers PDF. Cependant, il ne dispose pas d'une méthode intégrée pour convertir directement le contenu HTML en PDF. Pour créer un nouveau PDF à l'aide de PyPDF, nous devons ajouter du contenu à un PDF existant ou créer un nouveau PDF vierge, puis y ajouter du texte ou des images. Le code suivant permet de créer des fichiers PDF :
from pypdf import PdfWriter, PdfReader
# Create a new PDF file
pdf_output = PdfWriter()
# Add a new blank page
page = pdf_output.add_blank_page(width=610, height=842) # Width and height are in points (1 inch = 72 points)
# Read content from an existing PDF
with open('input.pdf', 'rb') as existing_pdf:
existing_pdf_reader = PdfReader(existing_pdf)
# Merge content from the first page of the existing PDF
page.merge_page(existing_pdf_reader.pages [0])
# Save the new PDF to a file
with open('output.pdf', 'wb') as output_file:
pdf_output.write(output_file)
Le fichier d'entrée contient 28 pages et seule la première page est ajoutée au nouveau fichier PDF. Le résultat est le suivant :
IronPDF offre des capacités avancées pour créer de nouveaux fichiers PDF directement à partir du contenu HTML. Cela permet de générer des rapports et des documents dynamiques sans nécessiter d'étapes supplémentaires. Voici un exemple de code :
import ironpdf
ironpdf.License.LicenseKey = "YOUR-LICENSE-KEY-HERE"
# Create a PDF from a HTML string using Python
pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1><p>This PDF is created using IronPDF for Python</p>")
# Export to a file or Stream
pdf.SaveAs("output.pdf")
# Advanced Example with HTML Assets
# Load external html assets Images, CSS and JavaScript.
# An optional BasePath 'C\site\assets\' is set as the file location to load assets from
myAdvancedPdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", "C:\site\assets")
myAdvancedPdf.SaveAs("html-with-assets.pdf")
Dans le code ci-dessus, nous avons d'abord appliqué la clé de licence pour utiliser toute la puissance d'IronPDF. Vous pouvez également l'utiliser sans clé de licence, mais des filigranes apparaîtront dans les fichiers PDF créés. Ensuite, nous créons deux documents PDF, le premier en utilisant la chaîne HTML comme contenu et le second en utilisant les actifs. Le résultat est le suivant :
PyPDF permet de fusionner plusieurs pages/documents en un seul PDF en ajoutant des pages d'un PDF à un autre. Ajoutez les chemins d'entrée de tous les fichiers PDF de la liste et utilisez la méthode append pour fusionner et générer un seul fichier.
from pypdf import PdfWriter
merger = PdfWriter()
for pdf in ["file1.pdf", "file2.pdf", "file3.pdf"]:
merger.append(pdf)
merger.write("merged-pdf.pdf")
merger.close()
IronPDF offre également des fonctionnalités similaires pour la fusion de documents en un seul, ce qui permet de consolider facilement le contenu de différentes sources PDF.
import ironpdf
ironpdf.License.LicenseKey = "YOUR-LICENSE-KEY-HERE"
html_a = """<p> [PDF_A] </p>
<p> [PDF_A] 1st Page </p>
<div style='page-break-after: always;'></div>
<p> [PDF_A] 2nd Page</p>"""
html_b = """<p> [PDF_B] </p>
<p> [PDF_B] 1st Page </p>
<div style='page-break-after: always;'></div>
<p> [PDF_B] 2nd Page</p>"""
renderer = ironpdf.ChromePdfRenderer()
pdfdoc_a = renderer.RenderHtmlAsPdf(html_a)
pdfdoc_b = renderer.RenderHtmlAsPdf(html_b)
merged = PdfDocument.Merge(pdfdoc_a, pdfdoc_b)
merged.SaveAs("Merged.pdf")
PyPDF est une bibliothèque Python, capable de diviser un seul PDF en plusieurs PDF distincts, chacun contenant une ou plusieurs pages PDF.
from pypdf import PdfReader, PdfWriter
# Open the PDF file
pdf_file = open('input.pdf', 'rb')
# Create a PdfFileReader object
pdf_reader = PdfReader(pdf_file)
# Split each page into separate PDFs
for page_num in range(len(pdf_reader.pages)):
pdf_writer = PdfWriter()
pdf_writer.add_page(pdf_reader.pages [page_num])
output_filename = f'page_{page_num + 1}_pypdf.pdf'
with open(output_filename, 'wb') as output_file:
pdf_writer.write(output_file)
# Close the PDF file
pdf_file.close()
Le code ci-dessus divise le document PDF de 28 pages en pages individuelles et les enregistre en tant que 28 nouveaux fichiers PDF.
IronPDF offre également des fonctionnalités similaires pour diviser les PDF, permettant aux utilisateurs de diviser un seul PDF en plusieurs fichiers PDF ayant chacun une page PDF unique. Il nous permet de séparer une page spécifique d'un PDF comportant plusieurs pages. Le code suivant permet de diviser les documents en plusieurs fichiers :
import ironpdf
ironpdf.License.LicenseKey = "YOUR-LICENSE-KEY-HERE"
html = """<p> Hello Iron </p>
<p> This is 1st Page </p>
<div style='page-break-after: always;'></div>
<p> This is 2nd Page</p>
<div style='page-break-after: always;'></div>
<p> This is 3rd Page</p>"""
renderer = ironpdf.ChromePdfRenderer()
pdf = renderer.RenderHtmlAsPdf(html)
# take the first page
page1doc = pdf.CopyPage(0)
page1doc.SaveAs("Split1.pdf")
# take the pages 2 & 3
page23doc = pdf.CopyPages(1, 2)
page23doc.SaveAs("Split2.pdf")
Pour obtenir des informations plus détaillées sur IronPDF concernant la lecture des fichiers PDF, la rotation des pages PDF, le rognage des pages, la définition du mot de passe propriétaire/utilisateur et d'autres options de sécurité, veuillez consulter le site suivantPage d'exemples de code IronPDF Python.
PyPDF fournit une méthode simple pour extraire du texte des PDF. Il propose la classe PdfReader
, qui permet aux utilisateurs de lire le contenu textuel du PDF.
from pypdf import PdfReader
reader = PdfReader("input.pdf")
page = reader.pages [0]
print(page.extract_text())
IronPDF permet également d'extraire du texte des PDF en utilisant la classe PdfDocument
. Il fournit une méthode appelée ExtractAllText
pour obtenir le contenu textuel du PDF. Cependant, la version gratuite d'IronPDF n'extrait que quelques caractères du document PDF. Pour extraire le texte intégral des PDF, IronPDF doit faire l'objet d'une licence. Voici un exemple de code pour extraire le contenu des fichiers PDF :
import ironpdf
ironpdf.License.LicenseKey = "YOUR-LICENSE-KEY-HERE"
# Load existing PDF document
pdf = ironpdf.PdfDocument.FromFile("input.pdf")
# Extract text from PDF document
all_text = pdf.ExtractAllText()
print(all_text)
Pour en savoir plus sur l'extraction de texte, veuillez consulter le site suivantTexte PDF vers Python exemple.
PyPDF est distribué sous la licence MIT, qui est une licence de logiciel libre connue pour ses termes permissifs. La licence MIT permet aux utilisateurs d'utiliser, de modifier, de distribuer et de sous-licencier librement la bibliothèque PyPDF sans aucune restriction. Les utilisateurs ne sont pas tenus de divulguer le code source de leurs applications qui utilisent PyPDF, ce qui le rend adapté aux projets personnels et commerciaux.
Le texte complet de la licence MIT est généralement inclus dans le code source de PyPDF, et les utilisateurs peuvent le trouver dans le fichier "LICENSE" de la distribution de la bibliothèque. De plus, le dépôt PyPDF GitHub(https://github.com/py-pdf/pypdf) est la principale source d'accès à la dernière version de la bibliothèque et aux informations sur les licences qui y sont associées.
IronPDF est une bibliothèque commerciale et n'est pas open-source. Il est développé et distribué par Iron Software LLC. L'utilisation d'IronPDF nécessite une licence valide d'Iron Software. Différents types de licences sont disponibles, notamment des versions d'essai à des fins d'évaluation et des licences payantes pour un usage commercial.
IronPDF étant un produit commercial, il offre des fonctionnalités et une assistance technique supplémentaires par rapport aux alternatives open-source. Pour obtenir une licence pour IronPDF, les utilisateurs peuvent se rendre sur le site officiel d'Iron Software(https://ironpdf.com/python/licensing/) pour découvrir les options de licence disponibles, les tarifs et les détails de l'assistance. Son offre License Lite commence à partir de $749 et est une licence perpétuelle.
PyPDF est une bibliothèque Python puissante et conviviale pour travailler avec des fichiers PDF. Ses fonctions de lecture, d'écriture, de fusion et de division des PDF en font un outil essentiel pour les tâches de manipulation des PDF. Que vous ayez besoin d'extraire du texte d'un PDF, de créer de nouveaux PDF à partir de zéro, ou de fusionner et diviser des documents existants, PyPDF fournit une solution fiable et efficace. En tirant parti des fonctionnalités de PyPDF, les développeurs Python peuvent rationaliser leurs flux de travail liés aux PDF et améliorer leur productivité.
IronPDF est une bibliothèque de manipulation de PDF complète et efficace pour Python, offrant un large éventail de fonctionnalités pour la lecture, la création, la fusion et la division de fichiers PDF. Qu'il s'agisse de générer des rapports PDF dynamiques, d'extraire des informations sur des documents à partir de PDF existants ou de fusionner plusieurs documents, IronPDF offre une solution fiable et facile à utiliser. En exploitant les capacités d'IronPDF, les développeurs Python peuvent rationaliser leurs flux de travail liés aux PDF et améliorer leur productivité.
Dans l'ensemble, PyPDF est une bibliothèque légère et facile à utiliser, adaptée aux opérations PDF de base. C'est un bon choix pour les projets dont les exigences en matière de PDF sont simples. En revanche, IronPDF offre une API plus étendue et des performances robustes, ce qui en fait la solution idéale pour les projets nécessitant des capacités de traitement PDF avancées, la manipulation de fichiers PDF volumineux et l'exécution de tâches complexes.
Les deux bibliothèques offrent de bonnes possibilités de codage pour les tâches PDF courantes. PyPDF est adapté aux opérations simples et aux mises en œuvre rapides, tandis qu'IronPDF fournit une API plus étendue et plus polyvalente pour gérer les tâches complexes liées aux PDF.
En termes de performances, IronPDF est susceptible de surpasser PyPDF, en particulier lorsqu'il s'agit de fichiers PDF volumineux ou de tâches nécessitant des manipulations PDF complexes.
Le choix entre les deux bibliothèques dépend des besoins spécifiques du projet et de la complexité des tâches liées au PDF.
IronPDF est également disponible pour uneessai gratuit pour tester l'ensemble de ses fonctionnalités en mode commercial. Télécharger IronPDF pour Python à partir deici.
9 produits de l'API .NET pour vos documents de bureau