【问题标题】:How to use HTML parser to get whats in a div tag or another tag in Java如何使用 HTML 解析器获取 div 标签或 Java 中的另一个标签中的内容
【发布时间】:2012-05-01 21:32:41
【问题描述】:

我想在标签中获取文本,即

<div id="title">    MotoGP  </div> 

我想从这里提取“MotoGP”。 我正在使用org.htmlparser

我试过了

NodeList nodes = parser.extractAllNodesThatMatch(new AndFilter(new TagNameFilter("div"),
     new HasAttributeFilter("id", "title")));

    SimpleNodeIterator nodeIterator = nodes.elements();
    while (nodeIterator.hasMoreNodes()) {

             HeadingTag tag = (HeadingTag)node;
             System.out.println(tag.getStringText());

【问题讨论】:

  • NodeList 节点 = parser.extractAllNodesThatMatch(new AndFilter(new TagNameFilter("div"), new HasAttributeFilter("id", "title"))); SimpleNodeIterator nodeIterator = nodes.elements(); while (nodeIterator.hasMoreNodes()) { // 节点 node = nodeIterator.nextNode(); HeadingTag 标签 = (HeadingTag) 节点; System.out.println(tag.getStringText());
  • 我已经编辑了我的问题并粘贴了我的代码。 .它不工作
  • div 之间不返回数据

标签: java html html-parsing


【解决方案1】:

看起来像这样:

Parser p;

// initialize p somehow
p = createParser(html /* actual html String */,
    charset /* null for default */);

NodeList nl = p.extractAllNodesThatMatch(
    new HasAttributeFilter("id", "title")); // or other id...

// if you want the text of the 1st matching node:
System.out.println(nl.elementAt(0).getText());

特别看:

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-07-02
    • 2012-04-13
    • 2016-07-23
    • 2015-09-17
    • 1970-01-01
    • 1970-01-01
    • 2011-11-26
    • 2019-06-28
    相关资源
    最近更新 更多