我正在使用代码来抓取PDF以生成相关字典。当我单独访问每个文本块时,我的代码就可以工作,即
x = scraperwiki.pdftoxml(u.read())
r = lxml.etree.fromstring(x)
s = r.xpath('//page[@number="142"]/text[@left = "134"]')
print s[8].text
print s [0],s [1] ..所有似乎都工作但是当我尝试相同的
时x = scraperwiki.pdftoxml(u.read())
r = lxml.etree.fromstring(x)
s = r.xpath('//page[@number="142"]/text[@left = "134"]')
print s[0:8].text
我收到此错误:AttributeError:'list'对象没有属性'text'
谁能告诉我什么是错的?
答案 0 :(得分:1)
text
是每个元素的属性,而不是列表的属性。
迭代每个元素。
x = scraperwiki.pdftoxml(u.read())
r = lxml.etree.fromstring(x)
s = r.xpath('//page[@number="142"]/text[@left = "134"]')
for elem in s[:8]:
print elem.text
或使用列表理解:
x = scraperwiki.pdftoxml(u.read())
r = lxml.etree.fromstring(x)
s = r.xpath('//page[@number="142"]/text[@left = "134"]')
print [elem.text for elem in s[:8]]