40 lines
1.5 KiB
Python
40 lines
1.5 KiB
Python
import os
|
|
from pdf2image import convert_from_path
|
|
import pytesseract
|
|
|
|
# Ordnerpfad, der die PDFs enthält
|
|
input_folder = '/home/dikuever/kennedy/kennedy_files'
|
|
output_folder = '/home/dikuever/kennedy/output'
|
|
|
|
# Überprüfen, ob der Ausgabepfad existiert, wenn nicht, erstellen
|
|
if not os.path.exists(output_folder):
|
|
os.makedirs(output_folder)
|
|
|
|
# Funktion, die alle PDFs im angegebenen Ordner verarbeitet
|
|
def process_pdfs(input_folder, output_folder):
|
|
# Durchläuft alle Dateien im Ordner
|
|
for filename in os.listdir(input_folder):
|
|
if filename.endswith('.pdf'):
|
|
pdf_path = os.path.join(input_folder, filename)
|
|
output_text_path = os.path.join(output_folder, f"{os.path.splitext(filename)[0]}.txt")
|
|
|
|
print(f"Verarbeite: {pdf_path}")
|
|
|
|
# Lade PDF und konvertiere es in Bilder
|
|
pages = convert_from_path(pdf_path, 100)
|
|
|
|
# OCR auf jedes Bild anwenden und den Text extrahieren
|
|
text = ''
|
|
for page in pages:
|
|
text += pytesseract.image_to_string(page)
|
|
|
|
# Speichere den extrahierten Text in einer .txt Datei
|
|
with open(output_text_path, 'w', encoding='utf-8') as text_file:
|
|
text_file.write(text)
|
|
|
|
print(f"Text aus {filename} wurde in {output_text_path} gespeichert.")
|
|
|
|
# Rufe die Funktion auf, um die PDFs zu verarbeiten
|
|
process_pdfs(input_folder, output_folder)
|
|
|