来自lxml html的Python打印元素

来自lxml html的Python打印元素,python,lxml.html,Python,Lxml.html,正在尝试打印从lxml检索到的整个元素 from lxml import html import requests page=requests.get("http://finance.yahoo.com/q?s=INTC") qtree = html.fromstring(page.content) quote = qtree.xpath('//span[@class="time_rtq_ticker"]') print 'Shares outstanding', Shares print

正在尝试打印从lxml检索到的整个元素

from lxml import html
import requests

page=requests.get("http://finance.yahoo.com/q?s=INTC")
qtree = html.fromstring(page.content)

quote = qtree.xpath('//span[@class="time_rtq_ticker"]')

print 'Shares outstanding', Shares
print 'Quote', quote
我得到的输出是

Quote [<Element span at 0x1044db788>]
Quote[]

但我想打印出元素,以便进行故障排除

lxml.html

import lxml, lxml.html

print( lxml.html.tostring(element) )

xpath
返回列表,因此您必须使用
[0]
仅获取第一个元素

print( 'Quote', html.tostring(quote[0]) )
用于
循环单独处理每个元素

for x in quote:
    print( 'Quote', html.tostring(x) )

谢谢简化它并清除它。当“quote”是一个列表时,它试图将其视为一个元素。有没有一种方法可以在不使用奇怪的html:div的情况下使用html5parser方法来实现这一点?从lxml导入html从lxml.html.html5解析器导入fragment_fromstring html.tostring(fragment_fromstring('hi'))#w3.org/1999/xhtml“>hi”是否有一个元素方法可以将其打印为字符串?类似于
element.some_method()
?@andreasonkopolus元素没有特殊的打印方法-您有
lxml.html.tostring(元素)
用于此。