Extraire des tableaux PDF en Python

Dans cet article, vous apprendrez à extraire des tableaux de fichiers PDF à l’aide de Python. PDF est un format populaire pour le partage de données, cependant, l’extraction de tableaux à partir d’un PDF peut être une tâche difficile. Il existe plusieurs bibliothèques Python disponibles qui peuvent nous aider dans cette tâche. Pourtant, une extraction précise des données pourrait faire défaut.

Découvrons donc comment extraire des données tabulaires d’un PDF avec une grande précision en quelques lignes de code. À la fin de ce didacticiel, vous serez en mesure d’extraire des tableaux de fichiers PDF à l’aide de Python et de les manipuler au besoin.

Bibliothèque Python pour extraire des tableaux à partir de PDF

Pour extraire les données des tables dans les fichiers PDF, nous utiliserons Aspose.PDF for Python. C’est une puissante bibliothèque Python avec un tas de fonctionnalités pour le traitement et la manipulation de PDF. Vous pouvez installer Aspose.PDF for Python à l’aide de la commande pip suivante.

pip install aspose-pdf

Extraire un tableau d’un PDF en Python

Voici les étapes pour extraire des données de tables dans un PDF à l’aide de Python.

  • Chargez le fichier PDF à l’aide de la classe Document.
  • Obtenir la référence de la page en PDF où se trouve le tableau.
  • Initialisez l’objet TableAbsorber et visitez la page sélectionnée à l’aide de la méthode TableAbsorber.visit(Page).
  • Dans une boucle, parcourez la liste des tables de la collection TableAbsorber.tablelist.
  • Pour chaque table, parcourez la collection de lignes dans AbsorbedTable.rowlist.
  • Pour chaque ligne absorbée, parcourez la collection de cellules dans AbsorbedRow.celllist.
  • Enfin, parcourez la collection textfragments de chaque cellule absorbée et imprimez le texte.

L’exemple de code suivant montre comment extraire du texte d’un tableau PDF en Python.

import aspose.pdf as pdf

# Charger le fichier PDF
pdfDocument = pdf.Document("input.pdf")

# Initialiser l'objet TableAbsorber
tableAbsorber =  pdf.text.TableAbsorber()

# Analyser toutes les tables sur la première page
tableAbsorber.visit(pdfDocument.pages[1])

# Obtenir une référence de la première table
absorbedTable = tableAbsorber.table_list[0]

# Itérer sur toutes les lignes du tableau
for pdfTableRow in absorbedTable.row_list:
    
    # Itérer sur toutes les colonnes de la ligne
   for pdfTableCell in pdfTableRow.cell_list:
        
        # Récupérer les fragments de texte
        textFragmentCollection = pdfTableCell.text_fragments
        
        # Itérer à travers les fragments de texte
       for textFragment in textFragmentCollection:
            
            # Imprimer le texte
            print(textFragment.text)
            

Outil en ligne pour extraire des tableaux PDF

Vous pouvez également essayer notre outil en ligne gratuit, Extracteur de table PDF, pour extraire des tables à partir de fichiers PDF, qui est basé sur Aspose.PDF for Python.

Utilisez la bibliothèque Python PDF gratuitement

Vous pouvez obtenir une licence temporaire gratuite et extraire des données de tableaux dans des fichiers PDF sans aucune limitation.

Explorer la bibliothèque PDF Python

Vous pouvez en savoir plus sur la bibliothèque Python PDF en utilisant la documentation. Vous pouvez également poster vos questions sur notre forum.

Conclusion

Dans cet article, vous avez appris à extraire des données de tableaux dans un PDF à l’aide de Python. Vous pouvez utiliser le même code avec de petites modifications pour extraire des tableaux de toutes les pages d’un PDF. De même, vous pouvez extraire des données de toutes les tables ou d’une table particulière sur une page. Installez simplement Aspose.PDF for Python dans votre application et découvrez un moyen simple et rapide d’extraire des données tabulaires à partir de fichiers PDF.

Voir également