我有一个我正在尝试解析的html页面。这是我在用lxml做的事情:lxml解析中的命名空间参数
node=etree.fromstring(html)
>>> node
<Element {http://www.w3.org/1999/xhtml}html at 0x110676a70>
>>> node.xpath('//body')
[]
>>> node.xpath('body')
[]
不幸的是,我所有的xpath调用现在都返回一个空列表。为什么会发生这种情况,我如何解决这个问题?
它可能是所有的标签命名空间,因为你已经猜到了,可能是最简单的使用HTML解析模块http://lxml.de/lxmlhtml.html#parsing-html – Anentropic 2015-02-08 20:57:49
否则与命名空间,你会有可以这样做:'node.xpath('// html:body',namespaces = {'html':'http://www.w3.org/1999/xhtml'})' – Anentropic 2015-02-08 20:58:39