Análisis no etiquetado HTML con "HTML Agility Pack" en C #

.net c# html html-agility-pack web-scraping

Pregunta

Usando HTML Agility Pack, quiero analizar un texto no etiquetado en un documento HTML. El siguiente HTML es un ejemplo de la estructura HTML que trataré y el texto debajo del último div es un ejemplo del texto que quiero extraer. (El que comienza con "Estoy vendiendo ..." y termina en "... servicios u ofertas")

<div class="mapbox">
    <div id="map" class="viewposting" data-latitude="32.965732" data-longitude="-96.882528" data-accuracy="22"></div>
    
    <p class="mapaddress">
        <small>
        (<a target="_blank" href="https://maps.google.com/maps/preview/@32.965732,-96.882528,16z">google map</a>)
        </small>
    </p>
</div>
    <p class="attrgroup">

            <span><b>2012 jeep grand cherokee laredo</b></span>
            <br>
    </p>
    <p class="attrgroup">
            <span>VIN: <b>ask me</b></span>
            <br>
            <span>condition: <b>excellent</b></span>
            <br>
            <span>cylinders: <b>6 cylinders</b></span>
            <br>
            <span>drive: <b>rwd</b></span>
            <br>
            <span>fuel: <b>gas</b></span>
            <br>
            <span>odometer: <b>98000</b></span>
            <br>
            <span>title status: <b>clean</b></span>
            <br>

            <span>transmission: <b>automatic</b></span>
            <br>

    </p>
    
        <div class="print-information print-qrcode-container">
            <p class="print-qrcode-label">QR Code Link to This Post</p>
            <div class="print-qrcode" data-location="east"></div>
        </div>
I am selling my 2012 Jeep Grand Cherokee. The Jeep runs and drives great. Zero issues. Always been well maintained and serviced on time. Very dependable car has never left me stranded. Very healthy. Everything works like it should. This Grand Cherokee would make a great family car or First car.<br>
<br>
*3.6 V6 <br>
*Automatic Transmission <br>
*98,000 Original Miles<br>
*Leather and Heated Seats<br>
*Navigation<br>
*Back Up Camera <br>
*Good Tires<br>
*Cold A/C Hot Heater <br>
*Clean Texas Title<br>
*Clean Carfax<br>
Much More!!<br>
<br>
Call or Text me for anymore information. <br>
 <a href="/fb/dal/cto/6620220745" class="showcontact" title="click to show contact info" rel="nofollow">show contact info</a>
    
            <li>do NOT contact me with unsolicited services or offers</li>

¿Puede alguien decirme cómo hacer esto? ¿Cómo extraer ese texto usando HTML Agility Pack en .NET?

Gracias por adelantado

Respuesta aceptada

Después de cargar el documento, use xpath para seleccionar el texto que sigue a un nodo específico.

const string xpath = "//div[@class='print-information print-qrcode-container']/following-sibling::text()[1]";
string text = doc.DocumentNode.SelectSingleNode(xpath).InnerText;

devoluciones:

Estoy vendiendo mi Jeep Grand Cherokee 2012. El jeep corre y conduce genial. Cero problemas. Siempre ha sido bien mantenido y mantenido a tiempo. Coche muy confiable nunca me ha dejado varado. Muy saludable. Todo funciona como debería. Este Grand Cherokee sería un gran auto familiar o el primer auto.

y visca catalunya!



Related

Licencia bajo: CC-BY-SA with attribution
No afiliado con Stack Overflow
Licencia bajo: CC-BY-SA with attribution
No afiliado con Stack Overflow