2015-05-09 40 views
1

我正在使用lxml.html解析html內容。但我不明白爲什麼lxml會丟棄「body」標籤屬性。 嘗試使用lxml.html.parse和lxml.html.document_fromstring建議herelxml.html忽略正文類屬性

但仍然無法正常工作。

例HTML字符串: -

<html class="hello"> <head> <iframe src="index.html"></iframe> </head> <body class="foo"><h1>a</h1></body> </html>

別人是否也面臨這個問題?

回答

0

可能來不及提供幫助,但我遇到了相同的底層解析器(lxml使用libxml2,我直接使用)的類似問題。我相信問題是<iframe> s不能出現在文檔的<頭>。當libxml2在那裏看到一個時,它會嘗試通過隱式關閉<頭部>並啓動<主體>來繼續解析。這隱含地創建<正文>然後混淆你,因爲它沒有實際的<正文>標籤中的類。事實上,我認爲你的實際<正文>將不會出現在解析模型中。