我需要获取 HTML 文件的所有元素,因为我必须将它们表示在树上。问题是我只能获取第一个节点,html 节点。
我正在使用 HTMLParser 库进行 Java 编程。
我的代码是:
import org.htmlparser.Node;
import org.htmlparser.Parser;
import org.htmlparser.util.NodeList;
import org.htmlparser.util.ParserException;
class Principal
{
public static void main (String[] args) {
try {
Parser parser = new Parser("http://www.marca.com");
NodeList list = parser.parse(null);
for (int i = 0; i < list.size(); i++) {
Node node = list.elementAt(i);
System.out.println(node.getText());
}
} catch (ParserException pe) {
pe.printStackTrace ();
}
}
}
我尝试使用迭代器,但结果是相同的。
代码的执行产生以下结果:
!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"
html xmlns="http://www.w3.org/1999/xhtml"
有谁知道如何获取 HTML 文件的所有元素?
最佳答案
树有不同的级别。在您的方法中,您只需选择顶层的节点。为了打印所有节点,您需要打印所有子节点。
关于java - java中使用HTMLParser获取所有节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19624103/