|
10鱼币
from pdf2image import convert_from_path
import pytesseract
# 将PDF转换为图片
def pdf_to_image(pdf_path):
images = convert_from_path(pdf_path)
return images
# 对图片进行OCR识别
def recognize_text(images):
text_list = []
for image in images:
text = pytesseract.image_to_string(image, lang='chi_sim')
text_list.append(text)
return text_list
# 将识别结果保存到文件中
def save_text(text_list, file_path):
with open(file_path, 'w', encoding='utf-8') as f:
for text in text_list:
f.write(text + '\n\n')
if __name__ == '__main__':
# 将'example.pdf'转换为图片
images = pdf_to_image(r'f:\123.pdf')
# 对图片进行OCR识别
text_list = recognize_text(images)
# 将识别结果保存到'example.txt'中
save_text(text_list, r'f:\123.txt')
错误信息
Traceback (most recent call last):
File "C:\Users\ssq\AppData\Roaming\Python\Python39\site-packages\pdf2image\pdf2image.py", line 568, in pdfinfo_from_path
proc = Popen(command, env=env, stdout=PIPE, stderr=PIPE)
File "C:\Program Files (x86)\Python39-32\lib\subprocess.py", line 951, in __init__
self._execute_child(args, executable, preexec_fn, close_fds,
File "C:\Program Files (x86)\Python39-32\lib\subprocess.py", line 1420, in _execute_child
hp, ht, pid, tid = _winapi.CreateProcess(executable, args,
FileNotFoundError: [WinError 2] 系统找不到指定的文件。
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "D:\Python\pdf2ocr.py", line 25, in <module>
images = pdf_to_image(r'f:\123.pdf')
File "D:\Python\pdf2ocr.py", line 6, in pdf_to_image
images = convert_from_path(pdf_path)
File "C:\Users\ssq\AppData\Roaming\Python\Python39\site-packages\pdf2image\pdf2image.py", line 127, in convert_from_path
page_count = pdfinfo_from_path(
File "C:\Users\ssq\AppData\Roaming\Python\Python39\site-packages\pdf2image\pdf2image.py", line 594, in pdfinfo_from_path
raise PDFInfoNotInstalledError(
pdf2image.exceptions.PDFInfoNotInstalledError: Unable to get page count. Is poppler installed and in PATH?
进程已结束,退出代码1
你的问题看起来是出在 pdf2image 库的依赖 poppler 没有正确安装或者没有在系统的 PATH 中。这导致了 pdf2image.exceptions.PDFInfoNotInstalledError: Unable to get page count. Is poppler installed and in PATH? 的错误。
解决这个问题的步骤是:
1. 首先,你需要确保已经安装了 poppler 。对于Windows用户,你可以在[这个链接](http://blog.alivate.com.au/poppler-windows/)下载预编译的 poppler 。对于Linux用户,可以通过包管理器(如 apt 或 yum )来安装,例如 sudo apt-get install poppler-utils 。
2. 接着,你需要将 poppler 的 bin 目录添加到你的系统 PATH 。在Windows上,你可以按照下面的步骤进行操作:
· 在Windows资源管理器中,右键点击此电脑(或我的电脑),选择属性。
· 在左侧的菜单中,选择"高级系统设置"。
· 在弹出的系统属性窗口中,选择"环境变量"按钮。
· 在环境变量窗口中,找到系统变量下的Path变量,双击进入。
· 在弹出的编辑环境变量窗口中,点击新建,然后浏览到你的 poppler\bin 的路径。
这样应该可以解决你的问题。如果你按照上述步骤操作后仍然出现问题,那么可能是其他问题导致的,你可以再详细描述一下你的问题。
|
最佳答案
查看完整内容
你的问题看起来是出在 pdf2image 库的依赖 poppler 没有正确安装或者没有在系统的 PATH 中。这导致了 pdf2image.exceptions.PDFInfoNotInstalledError: Unable to get page count. Is poppler installed and in PATH? 的错误。
解决这个问题的步骤是:
1. 首先,你需要确保已经安装了 poppler 。对于Windows用户,你可以在[这个链接](http://blog.alivate.com.au/poppler-windows/)下载预编译的 poppler 。对于Linux用户,可以通 ...
|