Skip to main content

pdfcor

PyPI version Python versions

pdfcor est un package Python polyvalent pour travailler avec des fichiers PDF. Il permet d'extraire le contenu en format Markdown avec les images, de fusionner des PDF et d'extraire des pages individuelles.

Installation

pip install pdfcor

Dépendances

pdfcor dépend des bibliothèques suivantes :

  • PyMuPDF (fitz) : pour l'extraction du contenu des PDF et la manipulation des fichiers PDF
  • Pillow (PIL) : pour le traitement des images

Ces dépendances seront automatiquement installées lors de l'installation de pdfcor via pip.

Utilisation

pdfcor peut être utilisé en ligne de commande avec diverses options :

Extraction de contenu en Markdown

pdfcor --input-folder <dossier_entree> --output-folder <dossier_sortie> [--recursive] [--resize]

Options

  • --input-folder : Spécifie le dossier d'entrée contenant les fichiers PDF à traiter. Par défaut, il utilise le dossier courant.
  • --output-folder : Définit le dossier de sortie pour les fichiers Markdown et les images extraites. Si non spécifié, il utilise le même dossier que l'entrée.
  • --recursive : Active le traitement récursif des sous-dossiers.
  • --resize : Redimensionne les images extraites pour qu'elles tiennent sur une page A4.

Fusion de PDF

pdfcor --fusion [--input-folder <dossier_entree>] [--output <nom_fichier_sortie>]

Cette commande fusionne tous les PDF d'un dossier sans aucune transformation.

Options

  • --input-folder : Spécifie le dossier contenant les PDF à fusionner. Par défaut, utilise le dossier courant.
  • --output : Spécifie le nom du fichier PDF fusionné. Par défaut, utilise le nom du dossier d'entrée.

Extraction de pages

pdfcor --pages <fichier_pdf>

Cette commande extrait toutes les pages d'un PDF dans des fichiers séparés.

Options

  • <fichier_pdf> : Le fichier PDF dont vous voulez extraire les pages.

Exemples

  1. Extraire le contenu de tous les PDF dans le dossier courant :

    pdfcor
    
  2. Fusionner tous les PDF d'un dossier :

    pdfcor --fusion --input-folder /chemin/vers/pdfs
    
  3. Extraire les pages d'un PDF spécifique :

    pdfcor --pages example.pdf
    

Utilisation comme module Python

Vous pouvez également utiliser pdfcor comme module dans vos scripts Python :

from pdfcor import process_pdf, process_folder, merge_pdfs, extract_pages

# Traiter un seul fichier PDF
process_pdf("/chemin/vers/fichier.pdf", "/chemin/vers/sortie", resize=False)

# Traiter un dossier entier
process_folder("/chemin/vers/dossier", "/chemin/vers/sortie", recursive=True, resize=True)

# Fusionner des PDF
merge_pdfs("/chemin/vers/dossier", "fichier_fusionne.pdf")

# Extraire les pages d'un PDF
extract_pages("/chemin/vers/fichier.pdf")

Fonctionnalités

  • Extraction du contenu textuel des PDF en format Markdown
  • Extraction et sauvegarde des images contenues dans les PDF
  • Option de traitement récursif des sous-dossiers
  • Redimensionnement optionnel des images pour une mise en page A4
  • Fusion de plusieurs fichiers PDF en un seul document
  • Extraction de pages individuelles d'un PDF
  • Utilisable en ligne de commande ou comme module Python

Fonctionnement

pdfcor offre plusieurs fonctionnalités principales :

  1. Extraction de contenu en Markdown :

    • Ouverture du fichier PDF avec PyMuPDF (fitz)
    • Extraction du texte et des images page par page
    • Conversion du texte extrait en format Markdown
    • Sauvegarde des images extraites et insertion des références dans le Markdown
  2. Fusion de PDF :

    • Lecture de tous les fichiers PDF dans le dossier spécifié
    • Combinaison de tous les PDF en un seul document
    • Sauvegarde du document fusionné avec le nom du dossier par défaut
  3. Extraction de pages :

    • Ouverture du fichier PDF spécifié
    • Création d'un nouveau PDF pour chaque page
    • Sauvegarde des pages individuelles dans un dossier dédié

Contribution

Les contributions sont les bienvenues ! N'hésitez pas à ouvrir une issue ou à soumettre une pull request sur notre dépôt GitHub.

Licence

Ce projet est sous licence MIT. Voir le fichier LICENSE pour plus de détails.

Metadata

Release files for pdfcor 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pdfcor 0.2.0
File Size Uploaded Provenance
pdfcor-0.2.0.tar.gz 5.2 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for pdfcor 0.2.0
File Interpreter ABI Platform
pdfcor-0.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 11.6 kB

Release files / pdfcor-0.2.0.tar.gz

Download URL pdfcor-0.2.0.tar.gz
Size 5.2 kB
Tags Source
SHA-256 checksum
How to use checksums
73fd11e3681e8b28bfe2b71b129c730c854e4052b13a1d9516f2fe20bd951dcc
BLAKE2b-256 checksum
How to use checksums
5080fd57c59cc51e57952f89d6dfc8d4f85bdcd4865467e58a1da56390b27c33
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.8.3 CPython/3.12.7 Darwin/24.1.0

Release files / pdfcor-0.2.0-py3-none-any.whl

Download URL pdfcor-0.2.0-py3-none-any.whl
Size 6.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
838299d054c8630ca724c42b57af1f28cd3830928e6cbf055121a17381895059
BLAKE2b-256 checksum
How to use checksums
51ac98e05d60787b0d14f7650412ce57259ab06df3f312716cd3138462571a3e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.8.3 CPython/3.12.7 Darwin/24.1.0

Security for pdfcor 0.2.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.2.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page