简体   繁体   English

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

[英]using Jsoup how we know whether a tag name exist in HTML page or not

I am trying to get some values from a web site. 我试图从网站上获得一些价值。 and want to use a method to check if one rule is available get the value from that rule or else the second one. 并希望使用一种方法来检查一个规则是否可用,从该规则获取值,否则从第二个规则获取值。 for example 例如

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();

This is sample i have done but not working 这是我已经完成但无法正常工作的示例

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);
}

if bld lrg red is available then take from if and if not available take value from else 如果bld lrg red可用,则取自if和if不可用,取自else的值

If you are checking for a span tag with all those classes the try like 如果您正在使用所有这些类检查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);
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM