使用python3从PDF中提取文本

问题描述 投票:0回答:2

我试图从PDF文件中的文本使用slate模块,如本

$sudo pip install https://codeload.github.com/timClicks/slate/zip/master
Collecting https://codeload.github.com/timClicks/slate/zip/master
  Downloading https://codeload.github.com/timClicks/slate/zip/master
Requirement already satisfied: distribute in /usr/lib/python3.5/site-packages (from slate==0.5.2)
Requirement already satisfied: pdfminer3k in /usr/lib/python3.5/site-packages (from slate==0.5.2)
Requirement already satisfied: setuptools>=0.7 in /usr/lib/python3.5/site-packages (from distribute->slate==0.5.2)
Requirement already satisfied: pytest>=2.0 in /usr/lib/python3.5/site-packages (from pdfminer3k->slate==0.5.2)
Requirement already satisfied: ply>=3.4 in /usr/lib/python3.5/site-packages (from pdfminer3k->slate==0.5.2)
Requirement already satisfied: py>=1.4.29 in /usr/lib/python3.5/site-packages (from pytest>=2.0->pdfminer3k->slate==0.5.2)
Installing collected packages: slate
  Found existing installation: slate 0.3
    Uninstalling slate-0.3:
      Successfully uninstalled slate-0.3
  Running setup.py install for slate ... done
Successfully installed slate-0.5.2

而我想:

#!/usr/bin/python3
import slate

with open('/var/tmp/PhysRevB.93.014203.pdf') as fp:
    doc = slate.PDF(fp)
print(len(doc))
print(doc[0])

这是给我的错误:

$python3 tstslt.py 
Traceback (most recent call last):
  File "tstslt.py", line 2, in <module>
    import slate
  File "/usr/lib/python3.5/site-packages/slate/__init__.py", line 66, in <module>
    from .classes import PDF
  File "/usr/lib/python3.5/site-packages/slate/classes.py", line 25, in <module>
    import utils
ImportError: No module named 'utils'

我可以用PyPDF2,但如果看板岩是更好的提取文本。

python-3.x pdf pdfminer
2个回答
1
投票

据qazxsw POI平板的一个依赖(pdfminer)不支持Python3

(...)

所需不起作用,因为它是目前使用python 3.5不兼容的“pdfminer”。

它说,所以他们的自述:

this issue

“安装Python 2.6或更高版本。(Python 3中不被支持。)”


0
投票

https://github.com/euske/pdfminer是原始slate3k为python3的叉子。

您可以使用slate安装slate3k

© www.soinside.com 2019 - 2024. All rights reserved.