[英]Selecting Elements that have multiple class whilst using JSoup
我正在从网站解析一些表,特别是我试图通过类名提取以下单元格:
Elements e=d.select("span[class=bld lrg red]");
for (Element element : e) {
System.out.println(element.text());}
这段代码给了我一些价值,这些价值在网站上以Price的形式给出。 但是有些情况下,我想从另一个类别而不是"span[class=bld lrg red]"
。
我的意思是“bld lrg red”类是空的然后我想从“span [class = price]”取值
在这种情况下如何使用'或'...我的意思是如果“bld lrg red”类具有价值,则取该价格或取“价格”类值。
您也可以使用regex
从您的网页中选择所需的元素,使用jsoup
,您可以使用'OR'条件来指定您要查找的内容;
例:
Elements e = d.select("span[class~=(?i)(bld lrg red|price)]");
上面的正则表达式会选择你的span
元素, class
选择器直接匹配bld lrg red
OR price
(不区分大小写)。
有关详细信息,请参阅此处: http : //jsoup.org/apidocs/org/jsoup/select/Selector.html
现在您可能想要迭代元素并选择哪些不是空白,空,两者等等。
编辑:根据评论, price class
不是由span
元素持有。 为了克服它,你可以使用:
Elements e = d.select("span[class=bld lrg red],del[class=price]");
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.