Java相当于PHP Simple HTML DOM Parser

时间:2011-05-30 13:20:09

标签: java html dom

由于我必须多线程,我不能在PHP中雄辩地解决我想用Java编程,遗憾的是我无法找到一个库,这将允许我像PHP简单一样强大,快速,轻松地解析HTML DOM HTML DOM Parser。您是否了解Java中易于使用的替代方案?

3 个答案:

答案 0 :(得分:7)

我从简单的HTML DOM Parser转到JSoup,我很满意。

答案 1 :(得分:3)

我可以看到我们在这里面临两个挑战:

  • 解析HTML可能不是格式良好的XHTML,可以轻松解析任何问题。我建议TagSoup库可以读取丑陋的HTML并生成格式良好的StaX流,然后可以在其他地方使用。

  • 构建DOM表示HTML文档并处理它。正如您在JDK中可能知道的那样,XML DOM(org.w3c.dom.*)已经全面实现。但我想这不是您一直在寻找的API类型。那些可以包装JDK Document的DOM4J或更早JDOM怎么样,你可以享受易于使用的API?

答案 2 :(得分:0)

我已成功使用TagSoup作为SAX解析器来填充DOM4J文档,然后我使用XPath进行查询。我花了一段时间才弄清楚咒语 - (Scala,但我确信你可以转换):

parserFactory = new org.ccil.cowan.tagsoup.jaxp.SAXFactoryImpl
val reader = new SAXReader(parserFactory.newSAXParser.getXMLReader)
val doc = reader.read(new InputSource(new StringReader(page)))