2012-02-25 11 views
5

Estoy tratando de extraer el contenido específico en html usando Jsoup. A continuación se muestra el contenido html de muestra.Extraiga los datos de etiqueta Span usando Jsoup

<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
</head> 
<body class=""> 
    <div class="shop-section line bmargin10 tmargin10"> 
    <div class="price-section fksk-price-section unit"> 
    <div class="price-table"> 
    <div class="line" itemprop="offers" itemscope="" itemtype="http://schema.org/Offer"> 
     <div class="price-save"> 
     <span class="label-td"><span class="label fksk-label">Price :</span></span> 
     </div> 
     <span class="price final-price our fksk-our" id="fk-mprod-our-id">Rs.<span class="small-font"> </span>11990</span> 
    </div> 
    <meta itemprop="price" content="Rs. 11990" /> 
    <meta itemprop="priceCurrency" content="INR" /> 
    <div class="our-price-desc fksk-our-price-desc"> 
     <small>(Prices are inclusive of all taxes)</small> 
    </div> 
    </div> 
    </div> 
    </div> 
</body> 
</html> 

Me dio la salida requerida mediante el siguiente comando:

document.select(".price-table").select(".line").select("span").get(2).text() 

se parece a su largo. ¿No puedo obtener directamente la clase span ("precio precio final nuestro fksk-nuestro")?

¿Alguna ayuda para hacer lo mismo?

Respuesta

4

¿Esto no funciona para usted? No estoy seguro de por qué está comenzando arbitrariamente en price-table.

doc.select("span[class=price final-price our fksk-our]").text(); 

Si no, debería estar bastante cerca. Mire el selector syntax de JSoup; es muy poderoso

+1

Muchas gracias AHungerArtist, la solución que proporcionó está funcionando bien. Encontré que la clase div de "tabla de precios" es única en todo el html, así que estoy tomando esa clase. – topblog

Cuestiones relacionadas