search

Home  >  Q&A  >  body text

javascript - 关于Jsoup解析html巨大问题!难倒我了,谢谢各位。

我现在想解析每个标签里面的的值, 但是现在有个问题就是 有的时候有8个值,有的时候有4个值, 我现在就想解析出每个 内的前四个值,不在乎他有多少值。(注意:tr标签若干)

PHP中文网PHP中文网2901 days ago379

reply all(1)I'll reply

  • 黄舟

    黄舟2017-04-10 14:57:07

    按题主给出的html,可以这样:

    Document document = Jsoup.parse(html);
    Elements elements = document.select("td br:lt(4)");
    for (Element element : elements) {
        System.out.println(element.previousSibling());
    }
    

    应题主需求,可以改为:

        Document document = Jsoup.parse(html);
        Elements elements = document.select("td");
        for (Element element : elements) {
            Elements brs = element.select("br:lt(4)");
            if(StringUtils.isNotBlank(brs.toString()))
                for (Element br : brs) {
                    System.out.print(br.previousSibling().toString().concat(" "));
                }
            else
                System.out.println(element.html());
        }
    

    reply
    0
  • Cancelreply