Error: cannot import name 'PDFDocument' from 'pdfminer.pdfparser'
Error: cannot import name 'PDFDocument' from 'pdfminer.pdfparser'
我需要从 pdf 文件中提取文本并使用 pdfminer.six 成功地提取了文本段落和表格。但是现在我收到与
行相关的错误
from pdfminer.pdfparser import PDFParser, PDFDocument:
ImportError: 无法从 'pdfminer.pdfparser' (C:\Users[username]\Anaconda3\lib\site-packages\pdfminer\pdfparser.py)
导入名称 'PDFDocument'
我正在使用 Anaconda Jupyter。 Python 3.7.3。包裹pdfminer.six-20181108
我使用的代码基于此:
How to read pdf file using pdfminer3k?
根据下面给出的建议,我多次尝试卸载并重新安装 Anaconda 和 pdfminer.six 以及其他软件包:
https://github.com/pdfminer/pdfminer.six/issues/196
一周前它突然起作用了,但现在我又报错了。
因为我在 Win10 上工作,所以我也尝试使用 Linux Ubuntu,如下所述:
https://medium.com/hugo-ferreiras-blog/using-windows-subsystem-for-linux-for-data-science-9a8e68d7610c
同样的错误。
然后,根据下面的网页,我认为拆分 PDFparser、PDFDocument 值得一试:
来自
from pdfminer.pdfparser import PDFParser, PDFDocument
至
from pdfminer.pdfparser import PDFParser
from pdfminer.pdfdocument import PDFDocument
from pdfminer.pdfpage import PDFPage
https://loctv.wordpress.com/2017/02/07/fix-importerror-cannot-import-name-pdfdocument-when-using-slate/
..
但这会在稍后的代码中产生新的错误。
我的代码开头如下所示:
```
path = [name and path of file]
fp = open(path, 'rb')
from pdfminer.pdfparser import PDFParser, PDFDocument
from pdfminer.pdfinterp import PDFResourceManager, PDFPageInterpreter
from pdfminer.converter import PDFPageAggregator
from pdfminer.layout import LAParams, LTTextBox, LTTextLine
```
我希望能够 运行 代码并从 pdf 文件中提取文本,但是代码因与 PDFDocument pdfminer.pdfparser
相关的错误而停止
非常感谢任何关于我应该做什么的建议!可能与 pdfminer.six 的安装方式有关?
我得到了 Notodden Serit 的帮助。改变这个:
from pdfminer.pdfparser import PDFParser, PDFDocument
至:
from pdfminer.pdfparser import PDFParser
from pdfminer.pdfdocument import PDFDocument
from pdfminer.pdfpage import PDFPage
并在
中添加解析器
doc = PDFDocument()
收件人:
doc = PDFDocument(parser)
然后:
for page in doc.get_pages():
收件人:
for page in PDFPage.create_pages(doc):
According to the pdfminer documentation
from pdfminer.pdfdocument import PDFDocument`
我需要从 pdf 文件中提取文本并使用 pdfminer.six 成功地提取了文本段落和表格。但是现在我收到与
行相关的错误from pdfminer.pdfparser import PDFParser, PDFDocument:
ImportError: 无法从 'pdfminer.pdfparser' (C:\Users[username]\Anaconda3\lib\site-packages\pdfminer\pdfparser.py)
导入名称 'PDFDocument'我正在使用 Anaconda Jupyter。 Python 3.7.3。包裹pdfminer.six-20181108
我使用的代码基于此: How to read pdf file using pdfminer3k?
根据下面给出的建议,我多次尝试卸载并重新安装 Anaconda 和 pdfminer.six 以及其他软件包: https://github.com/pdfminer/pdfminer.six/issues/196 一周前它突然起作用了,但现在我又报错了。
因为我在 Win10 上工作,所以我也尝试使用 Linux Ubuntu,如下所述: https://medium.com/hugo-ferreiras-blog/using-windows-subsystem-for-linux-for-data-science-9a8e68d7610c
同样的错误。
然后,根据下面的网页,我认为拆分 PDFparser、PDFDocument 值得一试: 来自
from pdfminer.pdfparser import PDFParser, PDFDocument
至
from pdfminer.pdfparser import PDFParser
from pdfminer.pdfdocument import PDFDocument
from pdfminer.pdfpage import PDFPage
https://loctv.wordpress.com/2017/02/07/fix-importerror-cannot-import-name-pdfdocument-when-using-slate/ .. 但这会在稍后的代码中产生新的错误。
我的代码开头如下所示:
```
path = [name and path of file]
fp = open(path, 'rb')
from pdfminer.pdfparser import PDFParser, PDFDocument
from pdfminer.pdfinterp import PDFResourceManager, PDFPageInterpreter
from pdfminer.converter import PDFPageAggregator
from pdfminer.layout import LAParams, LTTextBox, LTTextLine
```
我希望能够 运行 代码并从 pdf 文件中提取文本,但是代码因与 PDFDocument pdfminer.pdfparser
相关的错误而停止非常感谢任何关于我应该做什么的建议!可能与 pdfminer.six 的安装方式有关?
我得到了 Notodden Serit 的帮助。改变这个:
from pdfminer.pdfparser import PDFParser, PDFDocument
至:
from pdfminer.pdfparser import PDFParser
from pdfminer.pdfdocument import PDFDocument
from pdfminer.pdfpage import PDFPage
并在
中添加解析器doc = PDFDocument()
收件人:
doc = PDFDocument(parser)
然后:
for page in doc.get_pages():
收件人:
for page in PDFPage.create_pages(doc):
According to the pdfminer documentation
from pdfminer.pdfdocument import PDFDocument`