java-org.htmlparser.Parser,需要获取h3和x27之间的内容;s
语法分析器, 我有一段html(见下文),我需要获取 这个 在我的文件中有一堆带有unqiue id的容器div。 我可以很好地获取div及其内部html。我想不出来 了解如何获取H3标签之间的内容 这段代码适用于div,但不适用于h3: 如果发现h3具有正确的ID,我就是不知道如何 获取innerHTML或标记之间的内容 谢谢你的帮助java-org.htmlparser.Parser,需要获取h3和x27之间的内容;s,java,html-parsing,html-parser,Java,Html Parsing,Html Parser,语法分析器, 我有一段html(见下文),我需要获取 这个 在我的文件中有一堆带有unqiue id的容器div。 我可以很好地获取div及其内部html。我想不出来 了解如何获取H3标签之间的内容 这段代码适用于div,但不适用于h3: 如果发现h3具有正确的ID,我就是不知道如何 获取innerHTML或标记之间的内容 谢谢你的帮助 parser = new Parser(); parser.setInputHTML(inHTML); parser.setEncodi
parser = new Parser();
parser.setInputHTML(inHTML);
parser.setEncoding("UTF-8");
lstNodes = parser.extractAllNodesThatMatch( new AndFilter(new TagNameFilter("h3"),
new HasAttributeFilter("id", "h3_"+num)));
这会找到它,但不会返回h3之间的数据
<div class="container" id="container_2">
<h3 id="h3_2">Adding a few</h3>
<div class="maindiv" id="div_2">
...new articles in here jus tto flesh it out.
</div><!--end of div_2-->
</div>
添加一些
…这里的新文章只是为了充实它。
我最终创建了自己的标签
class H3Tag extends CompositeTag
你快到了。您可以手动将其强制转换为
HeadingTag
,并使用getStringText()
获取标记之间的文本
NodeList nodes = parser.extractAllNodesThatMatch(new AndFilter(new TagNameFilter("h3"),
new HasAttributeFilter("id", "h3_"+num)));
SimpleNodeIterator nodeIterator = nodes.elements();
while (nodeIterator.hasMoreNodes()) {
Node node = nodeIterator.nextNode();
HeadingTag tag = (HeadingTag)node;
System.out.println(tag.getStringText());
}
我最终创建了自己的标记类H3Tag extends CompositeTag