pdfquery / PyQuery:示例代码没有显示AttributeError但是我的确...为什么?

时间:2016-02-29 20:14:02

标签: python pdf pyquery

我正在关注找到here的示例代码。作者有一些documentation,其中列出了用于编写程序的一些步骤。当我一起运行整个程序时,它运行得很好但是当我按照他的步骤进行操作时,我得到了一个AttributeError。

这是我的代码

pdf = pdfquery.PDFQuery("Aberdeen_2015_1735t.pdf")
pdf.load()
pdf.tree.write("test3.xml", pretty_print=True, encoding="utf-8")

sept = pdf.pq('LTPage[pageid=\'1\'] LTTextLineHorizontal:contains("SEPTEMBER")')
print(sept.text())

x = float(sept.get('x0'))
y = float(sept.get('y0'))
cells = pdf.extract( [
     ('with_parent','LTPage[pageid=\'1\']'),
     ('cells', 'LTTextLineHorizontal:in_bbox("%s,%s,%s,%s")' % (x, y, x+600, y+20))
])

一切运行正常,直到达到“sept.get”,其中“'PyQuery'对象没有属性'get'。”有没有人知道为什么程序在一起运行时不会遇到这个错误但是当一段代码运行时会发生?

1 个答案:

答案 0 :(得分:0)

根据PyQuery API referencePyQuery对象确实没有get成员。代码示例必须已过时。

根据https://pypi.python.org/pypi/pdfquery,使用.attr检索属性:

x = float(sept.attr('x0'))

根据history of pyquery's README.rst来判断,get从未记录过,只是因为某些副作用(某些代表团可能会转到dict)才有效。