首页 > 解决方案 > 有人可以帮我理解这个错误在 pdfminer 的 pdf2txt 中的含义: AttributeError: 'PDFObjRef' object has no attribute 'decode'

问题描述

我正在使用 pdfminer 的 pdf2txt.py 从不同的 pdf 中提取文本。该算法在很多情况下都能很好地工作,但我收到了这个错误,我不确定我能做些什么来让 pdfminer 工作。

AttributeError:“PDFObjRef”对象没有属性“解码”

我在其他文档上运行了相同的命令,这是我唯一遇到此错误的命令。

我只是从命令行运行它,所以没有其他代码可以显示:

pdf2txt.py -t xml -F -1.0 test.pdf

这是 pdf2txt.py 的完整输出

<?xml version="1.0" encoding="utf-8" ?>
<pages>
Traceback (most recent call last):
  File "/usr/local/bin/pdf2txt.py", line 116, in <module>
    if __name__ == '__main__': sys.exit(main(sys.argv))
  File "/usr/local/bin/pdf2txt.py", line 110, in main
    interpreter.process_page(page)
  File "/Library/Python/2.7/site-packages/pdfminer2-20151206-py2.7.egg/pdfminer/pdfinterp.py", line 834, in process_page
    self.render_contents(page.resources, page.contents, ctm=ctm)
  File "/Library/Python/2.7/site-packages/pdfminer2-20151206-py2.7.egg/pdfminer/pdfinterp.py", line 844, in render_contents
    self.init_resources(resources)
  File "/Library/Python/2.7/site-packages/pdfminer2-20151206-py2.7.egg/pdfminer/pdfinterp.py", line 350, in init_resources
    self.fontmap[fontid] = self.rsrcmgr.get_font(objid, spec)
  File "/Library/Python/2.7/site-packages/pdfminer2-20151206-py2.7.egg/pdfminer/pdfinterp.py", line 200, in get_font
    font = self.get_font(None, subspec)
  File "/Library/Python/2.7/site-packages/pdfminer2-20151206-py2.7.egg/pdfminer/pdfinterp.py", line 191, in get_font
    font = PDFCIDFont(self, spec)
  File "/Library/Python/2.7/site-packages/pdfminer2-20151206-py2.7.egg/pdfminer/pdffont.py", line 643, in __init__
    self.cidcoding = '%s-%s' % (self.cidsysteminfo.get('Registry', b'unknown').decode("latin1"),
AttributeError: 'PDFObjRef' object has no attribute 'decode'

任何见解表示赞赏!

标签: pythonpdfminer

解决方案


推荐阅读