How to extract text from HTML using htmlagilitypack for this sample?

bigbada picture bigbada · May 3, 2011 · Viewed 9.1k times · Source

I wanna extract the text from a HTML source. I'm trying with c# and htmlagilitypack dll.

The source is:

<table>
  <tr>
    <td class="title">
      <a onclick="func1">Here 2</a>
    </td>
    <td class="arrow">
      <img src="src1" width="9" height="8" alt="Down">
    </td>
    <td class="percent">
      <span>39%</span>
    </td>
    <td class="title">
      <a onclick="func2">Here 1</a>
    </td>
    <td class="arrow">
      <img src="func3" width="9" height="8" alt="Up">
    </td>
    <td class="percent">
      <span>263%</span>
    </td>
  </tr>
</table>

How can I get the text Here 1 and Here 2 from the table?

Answer

WKordos picture WKordos · May 3, 2011
HtmlDocument htmlDoc = new HtmlDocument();
htmlDoc.LoadHtml("web page string");
var xyz = from x in htmlDoc.DocumentNode.DescendantNodes()
                     where x.Name == "td" && x.Attributes.Contains("class")
                     where x.Attributes["class"].Value == "title"
                     select x.InnerText;

not so pretty but should work