Extraire des informations à partir de fichiers PDF via la bibliothèque Python gratuite
API Python gratuite qui permet aux développeurs d'extraire des informations de documents PDF et de convertir des PDF dans d'autres formats et d'effectuer une analyse automatique de la mise en page.
PDFMiner est une bibliothèque Python open source très facile à utiliser pour le traitement de fichiers PDF sans aucune autre dépendance. PDFMine.six fork géré par la communauté de la bibliothèque originale PDFMiner. La bibliothèque a fourni des fonctionnalités très puissantes pour extraire des informations à partir de documents PDF. Il fournit un utilitaire de commande pour les non-programmeurs et une interface API pour les programmeurs. Un puissant convertisseur PDF fait également partie de la bibliothèque qui aide les utilisateurs à transformer des fichiers PDF en d'autres formats de texte tels que HTML.
Le PDFMiner est une bibliothèque Python pure qui peut facilement extraire tous les textes d'un fichier PDF qui sont rendus par programme. La grande capacité est qu'il extrait également les emplacements correspondants, les noms et tailles de police et la direction d'écriture (horizontale ou verticale) pour chaque segment de texte. Il prend en charge la spécification PDF-1.7 et prend en charge l'extraction de documents PDF protégés par mot de passe. La bibliothèque a inclus plusieurs autres fonctionnalités importantes, telles que l'analyse, l'analyse et la conversion de documents PDF, l'extraction de contenu au format HTML ou hOCR, la prise en charge des scripts d'écriture verticale, la prise en charge du cryptage RC4 et AES, l'extraction de la table des matières, l'extraction de contenu balisé, mise en page automatique analyse et ainsi de suite.
Premiers pas avec PDFMiner
PDFMiner nécessite Python 3.6 et supérieur. Vous pouvez installer PDFMiner en utilisant pip. Veuillez utiliser la commande suivante pour l'installer.
Installer PDFMiner via pip
pip install pdfminer
Vous pouvez également télécharger la bibliothèque partagée compilée à partir du référentiel GitHub et l'installer.
Extraire le texte d'un fichier PDF via Python
La bibliothèque open source Pdfminer.six donne aux développeurs de logiciels la possibilité d'extraire du texte d'un fichier PDF avec seulement quelques lignes de code Python. La bibliothèque se concentre sur l'obtention et l'analyse de données textuelles, puis extrait le texte d'une page directement à partir du code source du PDF. La bibliothèque permet également aux développeurs d'extraire des images (JPG, JBIG2, Bitmaps) à partir d'un fichier PDF. Il est également possible d'extraire le nom de la police ou la taille de chaque caractère individuel. Les exemples suivants montrent comment extraire le texte d'un fichier PDF et l'imprimer à l'écran.
Ouvrir et manipuler des documents PDF via Python
from pdfminer.high_level import extract_text
# Extract text from a pdf.
text = extract_text('example.pdf')
# Extract iterable of LTPage objects.
pages = extract_pages('example.pdf')
print(text)
Convertir un fichier PDF en hOCR via l'API Python
hOCR est une norme ouverte de représentation de données pour le texte formaté obtenu à partir de la reconnaissance optique de caractères (OCR). Les bibliothèques gratuites Pdfminer.six permettent aux développeurs de logiciels de convertir des fichiers PDF au format hOCR avec seulement quelques lignes de code Python. La bibliothèque est très facile à gérer et peut extraire les informations textuelles explicites des fichiers PDF qui en disposent et les utilise pour générer une représentation hOCR de base.
Convertir un fichier PDF en texte via Python
La bibliothèque comprend un riche ensemble de fonctionnalités et des capacités qui vous permettent d'aller au-delà du traitement PDF de base. La bibliothèque open source Pdfminer.six permet aux développeurs Python de convertir des documents PDF en texte avec seulement quelques commandes simples. Vous devez d'abord fournir le chemin d'accès aux fichiers PDF ainsi qu'au fichier texte. Si le document est protégé par un mot de passe, vous devez également fournir son mot de passe. L'exemple de code suivant peut être utilisé pour atteindre l'objectif, il renverra simplement la chaîne dans un PDF, étant donné son nom de fichier, vous pouvez facilement l'enregistrer dans un fichier.
Convertir un fichier PDF au format texte via l'API Python
from pdfminer.pdfinterp import PDFResourceManager, PDFPageInterpreter
from pdfminer.converter import TextConverter
from pdfminer.layout import LAParams
from pdfminer.pdfpage import PDFPage
from io import StringIO
def convert_pdf_to_txt(path):
rsrcmgr = PDFResourceManager()
retstr = StringIO()
codec = 'utf-8'
laparams = LAParams()
device = TextConverter(rsrcmgr, retstr, codec=codec, laparams=laparams)
fp = open(path, 'rb')
interpreter = PDFPageInterpreter(rsrcmgr, device)
password = ""
maxpages = 0
caching = True
pagenos=set()
for page in PDFPage.get_pages(fp, pagenos, maxpages=maxpages, password=password,caching=caching, check_extractable=True):
interpreter.process_page(page)
text = retstr.getvalue()
fp.close()
device.close()
retstr.close()
return text