帮助Java Swing HTML解析

时间:2010-06-03 19:26:52

标签: java swing html-parsing

我正在使用Java Swing HTML解析库解析HTML文档的集合,我试图在<title>标记之间隔离文本,以便我可以使用它们来识别文档但我很难由于handleStartTag方法无法访问标记内的文本

,因此实现了这一点

1 个答案:

答案 0 :(得分:1)

您可以使用XPath从HTML中提取数据:

String html = //...

//read the HTML into a DOM
StreamSource source = new StreamSource(new StringReader(html));
DOMResult result = new DOMResult();
Transformer transformer = TransformerFactory.newInstance().newTransformer();
transformer.transform(source, result);
Node root = result.getNode();

//use XPath to get the title
XPath xpath = XPathFactory.newInstance().newXPath();
String title = xpath.evaluate("/html/title", root);

然而,HTML必须是格式良好的XHTML才能实现。例如,“&lt; br&gt;”标记在HTML中有效,但在XHTML中无效,因为它未关闭。它必须是“&lt; br /&gt;”在XHTML中有效。