【问题标题】:Selecting certain <tr> tag with JSoup使用 JSoup 选择某些 <tr> 标签
【发布时间】:2013-02-01 05:43:53
【问题描述】:

我是 JSoup 的新手,并且已经使用它几天了,没有任何问题,直到我遇到了这个。我正在尝试从一个表中获取所有&lt;tr&gt; 标签,其中&lt;tr&gt;s 有一个具有特定类的子&lt;td&gt; 标签。

我正在尝试从this website 检索数据,这就是我正在尝试的:

document.select("#partedenieve tr:has(td.zonas)");

我不知道它是否有效,因为这里的问题是,如果您只选择#partedenieve tr,它只会返回thead 上的&lt;tr&gt;s。我尝试了其他一些查询,但是当我最终实现从 tbody 获取 &lt;tr&gt;s 时,它也不会返回所有 &lt;tr&gt; 标签。

我不知道这个问题是否与我想获得的&lt;tr&gt;s 上的行跨度标签有关...但到目前为止我还没有运气。

提前感谢您的回复。

【问题讨论】:

    标签: java html select jsoup


    【解决方案1】:

    试试:

    Elements elts = document.select("tr > td.class");
    

    这将返回给定类的所有 td 元素。所以你只需要得到每个唯一的父母:

    List<Element> list = new ArrayList<Element>();
    for (Element elt : elts) {
        if (!list.contains(elt) {
            list.add(elt);
        }
    }
    

    现在,您的 list 对象包含您的所有 tr 元素。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-20
      • 1970-01-01
      • 2017-06-04
      • 1970-01-01
      • 1970-01-01
      • 2015-06-12
      相关资源
      最近更新 更多