2017-08-21 5 views
1

Je suis en train d'extraire du texte à partir d'un PDF en utilisant Python, et je l'ai fait avec succès en utilisant PyPDF2 comme ceci:Comment extraire du texte d'une zone spécifique dans un fichier PDF en utilisant Python?

import PyPDF2 
pdfFileObj = open('path', 'rb') 
pdfReader = PyPDF2.PdfFileReader(pdfFileObj) 
pageObj = pdfReader.getPage(0) 
pageObj.extractText() 

Cet extrait tout le texte de la page, mais je veux extraire uniquement le texte à partir d'une région rectangulaire de 3'x4 'dans la partie supérieure gauche de la page.

Je veux Fondamentalement faire quelque chose comme: How-to extract text from a pdf doc within a specific rectangular region? mais en Python

Cela peut-il être fait par PyPDF2 ou par tout autre Python Library?

Répondre

0

Ceci est un sujet plutôt complexe, mais c'est possible. Vous devez d'abord vous familiariser avec le descripteur de format pdf.

Démarrer here par exemple.

Vous pouvez identifier l'emplacement et le contenu des zones de texte et extraire les données de chaîne. Le sujet contient des exemples pour pyPdf, la version précédente de PyPDF2, mais la syntaxe est similaire. Il existe des exemples sur comment parcourir les objets indirects.

Un bon point de départ est également la source de la fonction pageObj.extractText() que vous avez utilisée.

Si vous n'êtes pas limité à Python: How to extract text from a PDF?