gpt4 book ai didi

java - JSoup 排除表行

转载 作者:行者123 更新时间:2023-12-01 21:26:16 31 4
gpt4 key购买 nike

我正在使用 JSoup 选择器从表中获取行。但有一个问题,因为网站上的 td 类名很困惑,因此我需要清理我的值并从列表中排除这些元素。如果我的 Activity 元素包含单词“跳舞”,我将如何选择从表中删除整行?

    String url = "https://golf.procon.org/met-values-for-800-activities/";
Document doc = Jsoup.connect(url).get();
Element table = doc.select("table").get(1);

Iterator<Element> activity = table.select("td[class=xl75]").iterator();
Iterator<Element> specification = table.select("td[class=xl72]").iterator();
Iterator<Element> metAmount = table.select("td[class=xl73], td[class=xl74]").iterator();

元素看起来像这样:

<td class="xl73" style="border-width: medium 0.5pt 0.5pt; border-style: none solid solid; border-color: windowtext; width: 91pt; height: 11.25pt; background-color: transparent;" width="121" height="15">dancing</td>

我需要排除这样的元素,可能还包括此元素之后直到行尾的所有列。非常感谢您的帮助。

最佳答案

要排除具有给定文本的元素,您应该使用 notcontains pseudo selectors:

table.select("td[class=xl75]:not(:contains(dancing))")

关于java - JSoup 排除表行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58831685/

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