jsoup选择器获取直接内容而不是儿童的内容

时间:2015-07-02 11:09:38

标签: jsoup

如何使用jsoup选择器获取值499.00?

<label class="price-box">
    <span class="old-price price-cut">
       <i class="icon-rupee"></i>999.00
    </span>
    <i class="icon-rupee"></i> 499.00
</label>

以下选择器未给出任何结果。 http://try.jsoup.org/

.price-box :not(span.old-price, i)

1 个答案:

答案 0 :(得分:3)

遗憾的是,没有纯css选择器可以选择元素的文本,因为该文本本身不是元素。但是既然你正在使用JSoup,为什么不试试这个:

String html = "<body><label class=\"price-box\"><span class=\"old-price price-cut\">"
            + "<i class=\"icon-rupee\"></i>999.00</span><i class=\"icon-rupee\"></i>"
            + " 499.00</label></body></html>";
doc = Jsoup.parse(html);

Elements labels = doc.select("label.price-box");

for (Element label: labels){
    System.out.println(label.ownText());        
}

我猜你正在寻找Element.ownText()方法。