Mac Poppler + pdf2image PATH bug



问题:我一直在尝试使用Python库pdf2image,我知道这需要事先安装poppler。Poppler是安装的(通过自制)和包通过pip。

然而,当运行convert_to_path(my_pdf)时,我得到以下内容:

Traceback (most recent call last):
File "<ipython-input-9-ba107659b495>", line 1, in <module>
test_image = convert_from_path(testfile,
File "/Users/<myuser>/.pyenv/versions/3.8.0/lib/python3.8/site-packages/pdf2image/pdf2image.py", line 97, in convert_from_path
page_count = pdfinfo_from_path(pdf_path, userpw, poppler_path=poppler_path)["Pages"]
File "/Users/<myuser>/.pyenv/versions/3.8.0/lib/python3.8/site-packages/pdf2image/pdf2image.py", line 467, in pdfinfo_from_path
raise PDFInfoNotInstalledError(
PDFInfoNotInstalledError: Unable to get page count. Is poppler installed and in PATH?

我的系统:Mac,OC 10.15.7Python(通过Homebrew)版本3.8.0

which python
/Users/<myuser>/.pyenv/shims/python
which pip
/Users/<myuser>/.pyenv/shims/pip

到目前为止,我已经尝试过:Poppler通过自制程序(brew install poppler)安装,pdf2image与pip3 install pdf2image一起安装我也运行过brew cleanup

尝试使用以下强制convert_to_path中的poppler路径

pop_path = "/usr/local/Cellar/poppler/21.03.0_1"
convert_to_path(my_pdf_file,poppler_path = pop_path)

但是仍然得到相同的错误。

在网上看了一眼,发现很多人都有类似但不完全相同的问题。我觉得我一定做错了什么,所以任何指导都很好。

部分解决方案

在手动输入pop_path文件路径时,我忘记将/bin附加到路径

pop_path = "/usr/local/Cellar/poppler/21.03.0_1/bin"

代码现在可以工作了。虽然我的自尊心需要一段时间才能恢复。。。

我觉得我可能仍然坐在一个糟糕的配置问题上?关于类似问题的许多帖子似乎暗示,安装在自制程序上的popper不应该有这个问题。可能是因为我也在使用pyenv吗?

如果您使用conda环境,请在mac终端中运行以下代码

conda install -c conda-forge pdf2image
conda install -c conda-forge poppler

它解决了问题

相关内容

  • 没有找到相关文章

最新更新