使用Jsoup我们如何知道HTML页面中是否存在标记名称

时间:2014-07-23 09:33:11

标签: java html html-parsing jsoup

我想从网站上获取一些价值。并且想要使用一种方法来检查一个规则是否可用从该规则获取值,否则从第二个获取。例如

Document d=Jsoup.connect("some site name")
.userAgent("Mozilla/5.0 (X11; CrOS i686 3912.101.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.116 Safari/537.36").timeout(100000).get();

这是我已经完成但没有工作的样本

if(d.getAllElements().hasAttr("bld lrg red")) { 
    System.out.println("insidee IF"); 
    Elements e = d.select("span[class=bld lrg red]"); 
    String TEXT=e.text(); 
    System.out.println(TEXT);
} else {
    System.out.println("inside ELSE ");
    Elements e=d.select("td[class~=(?i)(toeNewPrice|toeUsedPrice)]");
    String TEXT=e.text();
    System.out.println(TEXT);
}

如果bld lrg红色可用,则从if取得,如果不可用则从else

取值

1 个答案:

答案 0 :(得分:2)

如果您要检查包含所有这些类的span标记,请尝试

if(doc.select("span.bld.lrg.red").size() > 0) { 
    System.out.println("insidee IF"); 
    Elements e = d.select("span[class=bld lrg red]"); 
    String TEXT=e.text(); 
    System.out.println(TEXT);
} else {
    System.out.println("inside ELSE ");
    Elements e=d.select("td[class~=(?i)(toeNewPrice|toeUsedPrice)]");
    String TEXT=e.text();
    System.out.println(TEXT);
}