OCR in PDF-Dateien mit Python

Blog

OCR in PDF-Dateien mit Python

Hallo Leute! Sie haben vielleicht schon von OCR mit Python gehört. Die bekannteste Bibliothek ist tesseract, die von Google gesponsert wird. Es ist sehr einfach, OCR für ein Bild durchzuführen. Das Problem tritt auf, wenn Sie OCR über ein PDF-Dokument ausführen möchten.

Ich arbeite an einem Projekt, bei dem ich PDF-Dateien eingeben, Text daraus extrahieren und dann den Text zur Datenbank hinzufügen möchte. Ich musste viel suchen, bevor ich über die endgültige Lösung stolperte. Also, ohne Zeit zu verlieren, können wir beginnen.

Tesseract installieren

Es ist sehr einfach, tesseract auf verschiedenen Betriebssystemen zu installieren. Der Einfachheit halber verwende ich Ubuntu als Beispiel. In Ubuntu müssen Sie einfach im Terminal folgenden Befehl ausführen:

sudo apt-get install tesseract-ocr

Es wird Tesseract zusammen mit der Unterstützung für drei Sprachen installieren.

PyOCR installieren

Jetzt müssen wir die Python-Bindungen für tesseract installieren. Glücklicherweise gibt es einige ziemlich schöne Bindungen. Wir werden ein neuestes installieren:

pip install git+https://github.com/jflesch/pyocr.git

Installieren von Zauberstab und PIL

Wir müssen noch zwei weitere Abhängigkeiten installieren, bevor wir fortfahren können. Der erste ist Zauberstab. Es sind die Python-Bindungen für Imagemagick. Wir werden es zum Konvertieren von PDF-Dateien in Bilder verwenden:

Wir werden auch PIL verwenden, weil PyOCR es braucht. Sie können sich die offiziellen Dokumente zur Installation auf Ihrem Betriebssystem ansehen.

Aufwärmen

Beginnen wir mit dem Schreiben unseres Drehbuchs. Zunächst importieren wir die benötigten Bibliotheken:

from wand.image import Image from PIL import Image as PI import pyocr import pyocr.builders import io

Notiz: Ich habe Image von PIL als PI importiert, da es sonst mit dem Image-Modul von wand.image in Konflikt geraten wäre.

Loslegen

Jetzt müssen wir das Handle der OCR-Bibliothek (in unserem Fall tesseract) und die Sprache abrufen, die von pyocr verwendet wird.

tool = pyocr.get_available_tools()[0]
lang = tool.get_available_languages()[1]

Wir haben die zweite Sprache im |_+_| . verwendet denn als ich das letzte Mal nachgesehen habe, war es Englisch.

Jetzt müssen wir zwei Listen einrichten, die verwendet werden, um unsere Bilder und final_text aufzunehmen.

#python #python verwenden #tesseract installieren #pyocr installieren #wand und pil installieren

yasoob.me

OCR in PDF-Dateien mit Python

Hallo Leute! Sie haben vielleicht schon von OCR mit Python gehört. Die bekannteste Bibliothek ist tesseract, die von Google gesponsert wird. Es ist sehr einfach, OCR für ein Bild durchzuführen. Das Problem tritt auf, wenn Sie OCR über ein PDF-Dokument ausführen möchten. Ich arbeite an einem Projekt, bei dem ich PDF-Dateien eingeben, Text daraus extrahieren und dann den Text zur Datenbank hinzufügen möchte.