Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何使用HTMLParser在标记之间获取值_Java_Html_Html Parsing - Fatal编程技术网

Java 如何使用HTMLParser在标记之间获取值

Java 如何使用HTMLParser在标记之间获取值,java,html,html-parsing,Java,Html,Html Parsing,我正在使用HTMLParser(org.HTMLParser)解析HTML。我使用它访问标记并获得如下标记属性: NodeVisitor linkvisitor = new NodeVisitor() { public void visitTag(Tag tag) { if ("script".equalsIgnoreCase(name)) { String srcValue = tag.getAttribute("src");

我正在使用HTMLParser(org.HTMLParser)解析HTML。我使用它访问标记并获得如下标记属性:

NodeVisitor linkvisitor = new NodeVisitor() {
    public void visitTag(Tag tag) {
        if ("script".equalsIgnoreCase(name)) {
            String srcValue = tag.getAttribute("src");
            // do stuff 
        }
    }
        // How to get value instead of tag?     
}
但是,现在我需要获取标记之间的值,比如
标记


提前感谢。

因为您已经知道
标记是一个脚本标记,您应该能够将其转换为脚本。那么你应该能够使用

有关设置
visitTag
方法的说明,请参阅

如果只关注具有结束标记的标记,则可以查看它是否是的实例,否则该标记没有结束标记(
)。然后调用我上面提到的方法

if(tag instanceof CompositeTag) {
  CompositeTag cTag = (CompositeTag)tag;
  String text = cTag.getStringText();
}

没有说HTMLPasser有什么问题,但你考虑过JSoup吗?@Andrew,谢谢你的提示。刚到JSoup网站,看起来很有趣,我一定会去看看。毕竟,我的代码设计是松散耦合的,我可以从一个解析器切换到另一个解析器。再次感谢。
if(tag instanceof CompositeTag) {
  CompositeTag cTag = (CompositeTag)tag;
  String text = cTag.getStringText();
}