lxml.html忽略body类属性

时间:2015-05-09 18:09:42

标签: iframe html-parsing lxml lxml.html

我正在使用lxml.html来解析html内容。但我不明白为什么lxml正在删除“body”标签属性。 尝试使用lxml.html.parse和lxml.html.document_fromstring建议contains()

但它仍然没有用。

示例html字符串: -

{{1}}

还有其他人也遇到过这个问题吗?

1 个答案:

答案 0 :(得分:0)

可能为时已晚,无法提供帮助,但我遇到了与同一底层解析器类似的问题(lxml使用libxml2,我直接使用它)。我认为问题是< iframe> s不能出现在< head>中该文件。当libxml2在那里看到一个时,它会尝试通过隐式关闭< head>来继续解析。并开始< body>。这隐含地创建了< body>然后会让你感到困惑,因为它在你的实际< body>中没有这个类标签。事实上,我认为你的实际< body>根本不会出现在已解析的模型中。