Extrahieren von Text aus PDF-Dateien mit PDFMiner in Python
Bei der Arbeit mit PDF-Dokumenten kann das Extrahieren von Text eine entscheidende Aufgabe sein. PDFMiner, eine Python-Bibliothek, vereinfacht diesen Prozess und ermöglicht Entwicklern das Analysieren und Extrahieren von Text aus PDF-Dateien.
Aktualisierte PDFMiner-API und veraltete Beispiele
Kürzliche Aktualisierungen von PDFMiner führte Änderungen an seiner API ein, wodurch viele vorhandene Beispiele obsolet wurden. Der Übergang zur neuesten Version kann dazu führen, dass Entwickler den Überblick verlieren und nicht sicher sind, wie sie grundlegende Aufgaben wie die Textextraktion durchführen sollen.
Beispielimplementierung
Um dieses Problem zu beheben, schauen wir uns eine Arbeitsweise an Beispiel, das zeigt, wie man Text aus einer PDF-Datei mit der aktuellen PDFMiner-Bibliothek extrahiert:
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
Dieser Code bietet einen umfassenden Ansatz zur Textextraktion, der alle notwendigen Schritte abdeckt. Die Funktion „convert_pdf_to_txt“ verwendet einen Dateipfad als Eingabe und übernimmt den Prozess des Öffnens der Datei, der Initialisierung des Dokumentparsers und der Konvertierung von Seiteninhalten in eine Textzeichenfolge.
Dieses Beispiel veranschaulicht die aktualisierte PDFMiner-Syntax, wodurch die Notwendigkeit entfällt veralteter Code. Es wurde gründlich getestet und für die Verwendung mit der neuesten PDFMiner-Version validiert.
Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.
Copyright© 2022 湘ICP备2022001581号-3