如何从使用etree xpath选择的节点获取所有内部html:
>>> from lxml import etree
>>> from StringIO import StringIO
>>> doc = '<foo><bar><div>привет привет</div></bar></foo>'
>>> hparser = etree.HTMLParser()
>>> htree = etree.parse(StringIO(doc), hparser)
>>> foo_element = htree.xpath("//foo")
我现在如何将foo峎u元素的内部HTML打印为文本?我需要得到这个:
^{pr2}$顺便说一句,当我试图使用lxml.html.tostring
时,我得到了奇怪的输出:
>>> import lxml.etree
>>> lxml.html.tostring(foo_element[0])
'<foo><bar><div>привет првиет</div></bar></foo>'
您可以应用与this other SO post中所示相同的技术。关于这个问题的例子:
或者在元素可能包含文本节点子节点时处理大小写:
^{pr2}$对于实际情况,强烈建议将代码重构为一个单独的函数,如链接帖子所示。在
相关问题 更多 >
编程相关推荐