Как конвертировать .png изображения в PDF / word с возможностью поиска с помощью Python - PullRequest
0 голосов
/ 30 октября 2019

Недавно я взял проект. Преобразование отсканированного PDF в PDF / слово с возможностью поиска с использованием Python tesseract.

После нескольких попыток я смог преобразовать отсканированный PDF в файлы изображений PNG, а затем я был поражен, может ли кто-нибудь помочь мне преобразовать PNGфайлы в Word / PDF с возможностью поиска. мой код прилагается

Пожалуйста, найдите прикрепленное изображение для справки.

Спасибо за вашу помощь:)

Import os
Import sys
from PIL import image
Import pytesseract
from pytesseract import image_to_string

 Libpath =r'_______' #site-package
 Pop_path=r'_______' #poppler dlls
 Sys.path.insert(0,LibPath)

  from pdf2image import convert_from_path

     Pdfpath=r'_______' # PDF file directory
     imgpath=r'_______' #image output path

     images= convert_from_path(pdf_path = pdfpath, 
         dpi=500, poppler_path= pop_path)
      for idx, of in enumerate (images):
                 pg.save(imgPath+'PDF_Page_'+'.png',"PNG")
                 print('{} page converted'.format(str(idx)))

       try:
          from PIL import image
       except ImportError:
                 import image
         import pytesseract

     def ocr-core(images):
              Text = 
       pytesseract.image_to_string(image.open(images))
       return text
  print(ocr_core("image path/imagename))

вот и все, я написал ..... тогда я получил несколько изображений ".PNG" ... теперь я могу преобразовать только одно изображение PNG в текст.

Как преобразовать все изображения и сохранить их в формате CSV / Word?

1 Ответ

0 голосов
/ 06 ноября 2019

Я получил ответ на свой вопрос

      from PIL import image
      from pdf2image import convert_from_path
      import pytesseract
      import OS
      import sys

     Pdf_file_path = '_______' #your file path

    Images = convert_from_path(Pdf_file_path, dpi=500)

    Counter=1
    for page in Images:
           idx= "image_"+str(Counter)+".jpg" ##or ".png"
           page.save(idx, 'JPEG')
           Counter = Counter+1

     file=Counter-1
      Output= '_____' #where you want to save and file name
     f=open(output, "w")
     for i in range(1,file+1):
              idx= "image_"+str(Counter)+".jpg" ##or ".png"         
  text=str(pytesseract.image_to_string(Image.open(idx)))
         f.write(text)
         f.close()
...