我可以使用Jsoup进行解析而不强制执行严格的HTML规则吗? (<p>标签内的块元素?)</p>

时间:2013-06-13 22:54:49

标签: jsoup

我需要使用如下所示的HTML:

<p> <span> <ul> <li>LIST ELEMENT</li> </ul> </span> </p>

...并在保留DOM层次结构的同时对其进行解析。

当我解析上面的内容时,Jsoup吐出来:

<span></span><ul><li>LIST ELEMENT></li></ul>

我尝试在各种HTML验证器中解析原始HTML,并且他们都说它无效并且执行相同的操作。我知道,但我需要保留这个无效的标记。

我是否可以在Jsoup中设置任何设置以使其保留此层次结构,尽管它无效?

1 个答案:

答案 0 :(得分:1)

尝试Xml Parser而不是默认的html。

  

public static Parser xmlParser()

     

创建一个新的XML解析器。此解析器假定不知道传入的标记,并且不将其视为HTML,而是创建一个简单的标记   树直接来自输入。

     

<强>返回:

    a new simple XML parser.

来源:http://jsoup.org/apidocs/org/jsoup/parser/Parser.html#xmlParser%28%29

示例:

Document doc = Jsoup.parse(html, "", Parser.xmlParser());