什么是最好的HTML HTML解析器?

时间:2010-06-25 20:13:17

标签: java html parsing

假设我们必须使用java,什么是最好的html解析器,它可以灵活地解析许多不同的html内容,并且也不需要很多代码来执行复杂类型的解析?

2 个答案:

答案 0 :(得分:10)

我会为此推荐Jsoup。它有一个非常好的API,支持jQuery like CSS selectors and non-verbose element iteration。以this answer的副本为例,这里会打印您自己的问题以及所有回答者的姓名:

URL url = new URL("https://stackoverflow.com/questions/3121136");
Document document = Jsoup.parse(url, 3000);

String question = document.select("#question .post-text").text();
System.out.println("Question: " + question);

Elements answerers = document.select("#answers .user-details a");
for (Element answerer : answerers) {
    System.out.println("Answerer: " + answerer.text());
}

替代方案是XPath,但JSoup对于已经很好地掌握CSS选择器的web开发人员更有用。

答案 1 :(得分:1)

最好的是能够正确完成工作的人。

有一个名为tagsoup的开源,还有jTidy