gpt4 book ai didi

java - 使用 JSoup 选择具有多个类的元素

转载 作者:可可西里 更新时间:2023-11-01 13:11:07 26 4
gpt4 key购买 nike

我正在解析网站上的一些表格,具体来说,我正在尝试按类名提取以下单元格:

Elements e=d.select("span[class=bld lrg red]");

for (Element element : e) {
System.out.println(element.text());}

此代码为我提供了一些值,这些值在网站中以价格的形式给出。但在某些情况下,我想从不同的类而不是 "span[class=bld lrg red]" 获取价格。

我的意思是“bld lrg red”类是空的,那么我想从“span[class=price]”中获取值

在这种情况下,我如何使用“或”。我的意思是,如果“bld lrg red”类别具有值(value),则采用该价格或采用“价格”类别的值(value)。

最佳答案

您也可以使用 regex 从您的网页中使用 jsoup 选择所需的元素,在那里您可以使用和“或”条件来指定您是什么寻找;

例子:

Elements e = d.select("span[class~=(?i)(bld lrg red|price)]");

上面的正则表达式会选择你的 span 元素,其 class 选择器直接匹配 bld lrg redprice (不区分大小写)。

详情引用这里:http://jsoup.org/apidocs/org/jsoup/select/Selector.html

现在您可能想要遍历元素并选择哪些不是空白、空、两者等等。

编辑:根据评论,price class 不由 span 元素持有。要克服它,您可以使用:

Elements e = d.select("span[class=bld lrg red],del[class=price]");

关于java - 使用 JSoup 选择具有多个类的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21694216/

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