如何在java中将网页的Html源转换为org.w3c.dom.Document?

如何在java中将网页的Html源转换为org.w3c.dom.Document?,java,html,Java,Html,如何将网页的Html源代码转换为Java中的org.w3c.dom.document?这实际上是一件相当困难的事情,因为任意Html网页有时格式不正确(主要浏览器都相当宽容)。你可能想调查一下,我从未尝试过,但看起来这可能是最好的选择。您还可以尝试类似的方法,并处理可能出现的任何解析异常(尽管我只尝试过xml): 我建议,它实现了HTML5解析算法。Firefox正在用这个语法分析器替换它自己的HTML语法分析器。我刚刚玩过,它是一个很棒的Java HTML语法分析器,工作起来有点像jQuery

如何将网页的Html源代码转换为Java中的org.w3c.dom.document?

这实际上是一件相当困难的事情,因为任意Html网页有时格式不正确(主要浏览器都相当宽容)。你可能想调查一下,我从未尝试过,但看起来这可能是最好的选择。您还可以尝试类似的方法,并处理可能出现的任何解析异常(尽管我只尝试过xml):


我建议,它实现了HTML5解析算法。Firefox正在用这个语法分析器替换它自己的HTML语法分析器。

我刚刚玩过,它是一个很棒的Java HTML语法分析器,工作起来有点像jQuery。非常容易使用

import java.io.File;
import org.w3c.dom.Document;
import org.w3c.dom.*;

import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.DocumentBuilder;
import org.xml.sax.SAXException;
import org.xml.sax.SAXParseException; 

...

try {
    DocumentBuilderFactory docBuilderFactory = DocumentBuilderFactory.newInstance();
    DocumentBuilder docBuilder = docBuilderFactory.newDocumentBuilder();
    Document doc = docBuilder.parse (InputStreamYouBuiltEarlierFromAnHTTPRequest);
}
catch (ParserConfigurationException e)
{
    ...
}
catch (SAXException e)
{
    ...
}
catch (IOException e)
{
    ...
}

...