gpt4 book ai didi

java - 如何使用 HTMLParser 获取标签之间的值

转载 作者:行者123 更新时间:2023-12-01 15:49:01 27 4
gpt4 key购买 nike

我正在使用 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?
}

但是现在我需要获取标签之间的值,例如 <script>标签?

提前致谢。

最佳答案

因为您已经知道 Tag是一个脚本标签,您应该能够将其转换为 ScriptTag 。那么你应该能够使用 CompositeTag.getStringText() .

NodeVisitor linkvisitor = new NodeVisitor() {
public void visitTag(Tag tag) {
if (tag.getTagName().equals("SCRIPT")) {
ScriptTag script = (ScriptTag)tag;
String srcValue = script.getAttribute("src");
String text = script.getStringText();
}
}
};

请参阅Javadocs for NodeVisitor有关设置 visitTag 的说明方法。

如果您只关心具有结束标记的标记,您可以查看它是否是 CompositeTag 的实例。 ,否则标记没有结束标记 ( <tag/> )。然后调用getStringText()上面提到的方法。

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

关于java - 如何使用 HTMLParser 获取标签之间的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6511289/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com