Maison > développement back-end > Tutoriel Python > Comment travailler avec des documents PDF à l'aide de Python

Comment travailler avec des documents PDF à l'aide de Python

Joseph Gordon-Levitt
Libérer: 2025-03-02 09:54:11
original
506 Les gens l'ont consulté

How to Work With PDF Documents Using Python

Les fichiers PDF sont populaires pour leur compatibilité multiplateforme, avec du contenu et de la mise en page cohérents sur les systèmes d'exploitation, les appareils de lecture et les logiciels. Cependant, contrairement aux fichiers de texte brut de traitement Python, les fichiers PDF sont des fichiers binaires avec des structures plus complexes et contiennent des éléments tels que des polices, des couleurs et des images.

Heureusement, il n'est pas difficile de traiter les fichiers PDF avec les modules externes de Python. Cet article utilisera le module PYPDF2 pour montrer comment ouvrir un fichier PDF, imprimer une page et extraire du texte. Pour la création et l'édition des fichiers PDF, veuillez vous référer à un autre tutoriel de moi.

PRÉPARATION

Le noyau réside dans l'utilisation du module externe PYPDF2. Tout d'abord, l'installez en utilisant PIP:

PIP est un système de gestion des packages pour Python qui installe et gère les packages Python, et de nombreux packages se trouvent dans l'index Python Package (PYPI).

Si vous avez téléchargé Python à partir de python.org, PIP est susceptible d'être installé automatiquement. Entrez la commande suivante dans le terminal pour installer pypdf2:

pip install PyPDF2
Copier après la connexion

Pour utiliser toutes les fonctionnalités de PYPDF2 (y compris le cryptage, le déchiffrement et le traitement d'image), vous pouvez utiliser la commande suivante:

pip install PyPDF2[full]
Copier après la connexion

Si vous n'avez besoin que de la fonction AES de cryptage / décryptage, vous pouvez utiliser:

pip install PyPDF2[crypto]
Copier après la connexion

PYPDF2 prend en charge le cryptage RC4 par défaut.

PYPDF2 Basics

PYPDF2 est une bibliothèque open source gratuite qui prend en charge la lecture, l'écriture, la segmentation et la fusion des fichiers PDF. Ce tutoriel utilise le PYPDF2 version 2.11.1.

Lire le fichier PDF

Nous utiliserons la version PDF Beauty and the Beast sur Project Gutenberg comme exemple de fichier. Vous pouvez télécharger le fichier ou utiliser n'importe quel autre fichier PDF.

Le code suivant montre comment ouvrir et lire un fichier PDF:

import PyPDF2

with open('beauty-and-the-beast.pdf', 'rb') as book:
    book_reader = PyPDF2.PdfReader(book)
Copier après la connexion

La première ligne importe le module PYPDF2. La classe PdfReader est utilisée pour lire un fichier PDF et représenter sa page comme un objet Page.

Obtenez le nombre de pages:

import PyPDF2

with open('beauty-and-the-beast.pdf', 'rb') as book:
    book_reader = PyPDF2.PdfReader(book)
    number_of_pages = len(book_reader.pages)
    print(number_of_pages)  # 输出:48
Copier après la connexion

Accès direct au numéro de page

get_page_number() Méthode pour obtenir le numéro de page:

import random
from PyPDF2 import PdfReader

with open('beauty-and-the-beast.pdf', 'rb') as book:
    book_reader = PdfReader(book)
    page_list = book_reader.pages
    last_page = page_list[-1]
    print(book_reader.get_page_number(last_page))  # 输出:47 (实际为第48页)
    some_page = page_list[random.randint(15, 35)]
    print(book_reader.get_page_number(some_page))  # 输出:随机页码
Copier après la connexion

Mode de page et mise en page de la page

Les

page_mode et page_layout Propriétés Retour Retour Mode et Informations sur la mise en page respectivement:

from PyPDF2 import PdfReader

with open('beauty-and-the-beast.pdf', 'rb') as book:
    book_reader = PdfReader(book)
    print(book_reader.page_mode)  # 输出:None
    print(book_reader.page_layout)  # 输出:None
Copier après la connexion

metadata Les propriétés renvoient les métadonnées des fichiers PDF, tels que l'auteur, le titre, le temps de création et le générateur, etc .:

from PyPDF2 import PdfReader

with open('beauty-and-the-beast.pdf', 'rb') as book:
    book_reader = PdfReader(book)
    book_metadata = book_reader.metadata
    print(book_metadata.title)       # 输出:Beauty and the Beast
    print(book_metadata.author)      # 输出:Anonymous
    print(book_metadata.creation_date) # 输出:例如 2006-11-30 01:13:00-08:00
    print(book_metadata.producer)    # 输出:例如 pdfeTeX-1.21a
Copier après la connexion

Résumé

Python simplifie le traitement des fichiers PDF via le module PYPDF2. Cet article ne présente que certaines des fonctions de PYPDF2.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal