在Mac上为Python安装Poppler

15

我需要在Python中提取PDF注释。所有我的搜索都表明我需要使用Poppler来完成这个任务,例如运行这个

但是我在安装Poppler时遇到了很多麻烦。我正在使用OS X(Yosemite)上的Python 3.4。到目前为止,我尝试了以下方法:
1. pip

pip3 install python-poppler-qt4

这提供了

ImportError: No module named 'sipdistutils'

2. 接下来我尝试了

pip3 install pypoppler

并获得

NameError: name 'file' is not defined

3. 接下来我尝试从这里下载。 与情况1相同的错误。我搜索了sipdistutils并找到了这个文件,我认为它可能是这个问题的解决方案。我将其复制到文件夹中,再次尝试使用pip。这次我收到了以下错误信息。

File "/python-poppler-qt4-0.24.0/sipdistutils.py", line 32
raise RuntimeError, "cannot parse SIP-generated '%s'" % sbf

4. 接下来我尝试从这里下载并使用"./configure"进行构建,结果如下:

checking for PYPOPPLER... configure: error: Package requirements (                          pygtk-2.0 >= 2.10.0,
                     atk >= 1.6.0,
                     poppler-glib >= 0.12
                     ) were not met:

No package 'pygtk-2.0' found
No package 'atk' found
No package 'poppler-glib' found

Consider adjusting the PKG_CONFIG_PATH environment variable if you 
installed software in a non-standard prefix.   

5. Macports

sudo port install py34-poppler-qt4

Error: Failed to install poppler
Please see the log file for port poppler for details:
        /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_graphics_poppler/poppler/main.log

错误:以下依赖项未安装:poppler-qt4-mac poppler qt4-mac dbus libmng lcms py34-pyqt4 dbus-python34 dbus-glib python34 python3_select py34-sip

我感觉我已经接近解决这个问题了,只需要做一些非常小的调整即可。


2
Homebrew(http://brew.sh/)对于Poppler有一个配方,对我来说比Macports好用多了。 - robertklep
http://macappstore.org/poppler/ - Rishabh Gupta
4个回答

24

以下内容仍然可用(2019年10月)

brew install poppler

2
在终端中安装Homebrew并将poppler的配方粘贴到其中对我有用。 适用于OS-x sierra。

1

简短回答

使用conda:

conda install poppler

更长的回答

根据我的经验,conda 是安装具有外部(非 Python)依赖项的 Python 包的最佳解决方案。安装 conda 有两个选项,完整的 Anaconda 发行版或极简的 Miniconda 工具。我更喜欢使用 Miniconda,可以通过运行 Bash 脚本来安装,可以在此处找到:

Miniconda Mac OSX 安装程序

安装 Miniconda 后,通常 创建一个新环境,然后激活它,例如:

conda create --name py37 python=3.7
conda activate py37

然后,您可以使用conda在活动的Conda环境中安装软件包,例如安装poppler

conda install poppler

你也可以使用pip安装软件包,例如安装pdftotext - 一个依赖于poppler的软件包:
pip install pdftotext

1
conda install poppler completes normally on my WSL2 Ubuntu 20.04 as if it had succeeded. But then I get ModuleNotFoundError: No module named 'poppler' when I try to import poppler - Homero Esmeraldo

0

在PyCharm的设置/解释器/可用包中安装对我来说是有效的(2021-08),因此也许在Anaconda包管理中安装也可以,但我没有尝试过后者。


1
如果你不确定你的答案是否可行,那么你就不应该提交它。 - Matthew Barlowe

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接