2016-09-29 1 views
0

J'utilise python 2.7 et pyPDF pour obtenir les méta-informations du titre à partir de fichiers PDF. Malheureusement, tous les PDF n'ont pas les méta-informations. Ce que je veux faire maintenant, c'est saisir les deux premières lignes de texte d'un PDF. En utilisant ce que j'ai maintenant comment puis-je modifier le code pour capturer les deux premières lignes avec pyPDF?Extraire les deux premières lignes de PDF avec Python et pyPDF

from pyPdf import PdfFileWriter, PdfFileReader 
import os 

for fileName in os.listdir('.'): 
    try: 
     if fileName.lower()[-3:] != "pdf": continue 
     input1 = PdfFileReader(file(fileName, "rb")) 

     # print the title of document1.pdf 
     print fileName, input1.getDocumentInfo().title 
    except: 
     print ",", 

Répondre

1
from PyPDF2 import PdfFileWriter, PdfFileReader 
import os 
import StringIO 

fileName = "HMM.pdf" 
try: 
     if fileName.lower()[-3:] == "pdf": 
      input1 = PdfFileReader(file(fileName, "rb")) 

      # print the title of document1.pdf 
      #print fileName, input1.getDocumentInfo().title 

      content = input1.getPage(0).extractText() 
      buf = StringIO.StringIO(content) 
      buf.readline() 
      buf.readline() 

except: 
     print ",", 

Mon PWD contient ce fichier "HMM.pdf" et ce code fonctionne sur Python 2.7 correctement.

+0

pouvez-vous me montrer un exemple complet basé sur mon code actuel ... il ne sort rien quand j'ajoute le code que vous avez donné ci-dessus. – acctman

+0

a modifié le code. –

+0

hmm suis-je raté quelque chose toujours pas de sortie. avoir 5 fichiers pdf dans un dossier je cours le script et rien – acctman