Как преобразовать документ PDF в документ PDF OCR - PullRequest
0 голосов
/ 12 февраля 2019

У меня возникла проблема, когда мне нужно преобразовать PDF-документ в PDF-документ OCR, как работает Adobe Acrobat.Я пробовал это с помощью модуля ocrmypdf, но как-то он не работает.Я использую Python 2.7.Любые другие модули также приветствуются.

import logging
import os
import subprocess
import sys
import time
import shutil

path="D:\Nikhil Scraping\Pdf all processing"

for filenames in os.listdir(path):
     print (filenames)
     filename=filenames.split('.')[0]
     print (filename)
     input_path=os.path.join(path,filenames)
     outputfile=filename+"_OCR.pdf"

     cmd=["ocrmypdf","--output-type", "pdf", input_path, outputfile]
     logging.info(cmd)
     proc=subprocess.Popen(cmd, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
     result = proc.stdout.read()

Отображается ошибка:

1-9-US 118137380VP1.pdf
1-9-US 118137380VP1

Traceback (most recent call last):
     File "D:\Nikhil Scraping\Pdf all processing\pdf_ocr_working.py", line 19, in <module>
     proc=subprocess.Popen(cmd, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
     File "C:\Python27\Lib\subprocess.py", line 710, in __init__
errread, errwrite)
     File "C:\Python27\Lib\subprocess.py", line 958, in _execute_child
startupinfo)
WindowsError: [Error 2] The system cannot find the file specified

, хотя я использую тот же код в Python 3.7, он работает нормально, но выходной файл не создается.

Также он успешно работает в Mac OS, я не знаю, почему Windows отображает эти ошибки.

Подход My Code Отображается ошибка

1 Ответ

0 голосов
/ 12 февраля 2019

Здесь вы объединяете все имена файлов вместо одного

input_path=os.path.join(path,filenames)

Используйте этот код вместо

input_path=os.path.join(path,filename)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...