如何使用 JSoup 解析以 <tr> 开头的片段?

How do I parse a fragment with JSoup that starts with a <tr>?

使用 JSoup,我试图在其上下文之外解析 <tr> 标记。根据我在 JSoup 文档中阅读的内容,这应该是可能的:

https://jsoup.org/cookbook/input/parse-body-fragment您有一个 body HTML 的片段(例如 div 包含几个 p 标签;相对于要解析的完整 HTML 文档)。

当我在 <tr><div>text</div></tr> 上使用 parseFragment 然后使用 document.body().html() 时,它 return 只有 div。这本身就有意义,因为 document/body 中的 tr 无效。

有没有其他方法可以在不将片段添加到文档的情况下解析该片段body?

您可以使用 xmlParser。它将跳过 HTML 验证并获取与您的输入完全相同的文档。

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