Analisi non etichettata con HTML con "HTML Agility Pack" in C #

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

Domanda

Utilizzando HTML Agility Pack, voglio analizzare un testo non codificato in un documento HTML. Il prossimo HTML è un esempio della struttura HTML che tratterò e il testo sotto l'ultimo div è un esempio del testo che voglio estrarre. (Quello che inizia con "I am selling ..." e termina in "... servizi o offerte")

<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>

Qualcuno può dirmi come farlo? Come estrarre quel testo usando HTML Agility Pack in .NET?

Grazie in anticipo

Risposta accettata

Dopo aver caricato il documento, utilizzare xpath per selezionare il testo seguendo un nodo specifico.

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

ritorna:

Sto vendendo la mia Jeep Grand Cherokee 2012. La jeep funziona e guida alla grande. Zero problemi. Sempre stato ben mantenuto e revisionato in tempo. L'auto molto affidabile non mi ha mai lasciato bloccati. Molto salutare. Tutto funziona come dovrebbe. Questo Grand Cherokee farebbe una grande macchina di famiglia o la prima macchina.

e visca catalunya!



Autorizzato sotto: CC-BY-SA with attribution
Non affiliato con Stack Overflow
È legale questo KB? Sì, impara il perché
Autorizzato sotto: CC-BY-SA with attribution
Non affiliato con Stack Overflow
È legale questo KB? Sì, impara il perché