2011-01-07 10 views
5

Próbuję uzyskać informacje z tabeli html przez parsowanie html przy użyciu HtmlAgilityPack.C# przy użyciu HtmlAgilityPack do pobierania danych z tabeli HTML

oto co HTML wygląda następująco:

... 
... 
... 
<tbody> 
        <tr> 
         <td class="style_19" style="vertical-align: baseline;"> 
          <div class="style_18">AA00857</div> 
         </td> 
         <td class="style_19" style="vertical-align: baseline;"> 
          <div></div> 
          <div class="style_20">TPRCF</div> 
         </td> 
         <td class="style_19" style="vertical-align: baseline;"> 
          <div class="style_21"></div> 
         </td> 
         <td class="style_19" style="vertical-align: baseline;"> 
          <div class="style_21">16908/2</div> 
         </td> 
         <td class="style_19" style="vertical-align: baseline;"> 
          <div class="style_18">&nbsp;ETG_C</div> 
         </td> 
        </tr> 
        <tr> 
         <td class="style_19" style="vertical-align: baseline;"> 
          <div class="style_18">AA</div> 
         </td> 
         <td class="style_19" style="vertical-align: baseline;"> 
          <div></div> 
          <div class="style_20">TPRCF</div> 
         </td> 
         <td class="style_19" style="vertical-align: baseline;"> 
          <div class="style_21"></div> 
         </td> 
         <td class="style_19" style="vertical-align: baseline;"> 
          <div class="style_21">16909/19</div> 
         </td> 
         <td class="style_19" style="vertical-align: baseline;"> 
          <div class="style_18">&nbsp;ETG_C</div> 
         </td> 
        </tr> 
        <tr> 
         <td class="style_19" style="vertical-align: baseline;"> 
          <div class="style_18">AA</div> 
         </td> 
         <td class="style_19" style="vertical-align: baseline;"> 
          <div></div> 
          <div class="style_20">TPRCF</div> 
         </td> 
         <td class="style_19" style="vertical-align: baseline;"> 
          <div class="style_21"></div> 
         </td> 
         <td class="style_19" style="vertical-align: baseline;"> 
          <div class="style_21">16907/7</div> 
         </td> 
         <td class="style_19" style="vertical-align: baseline;"> 
          <div class="style_18">&nbsp;ETG_C</div> 
         </td> 
        </tr> 
... 
... 

muszę wyciąg z powyżej tych wartości:

AA00857, TPRCF, 16908/2, ETG_C 

dotąd wszystko co mam to:

HtmlWeb hw = new HtmlWeb(); 
      HtmlAgilityPack.HtmlDocument htmlDoc = hw.Load(@"http://www.some123123site.com/index"); 



      if (htmlDoc.DocumentNode != null) 
      { 
       HtmlAgilityPack.HtmlNode bodyNode = htmlDoc.DocumentNode.SelectSingleNode("//tbody"); 

       if (bodyNode != null) 
       { 
        // Do something with bodyNode 
       } 
      } 

proszę o pomoc!

Odpowiedz

2

Spróbuj tego:

HtmlWeb hw = new HtmlWeb();    
HtmlAgilityPack.HtmlDocument htmlDoc = hw.Load(@"http://www.some123123site.com/index");     
if (htmlDoc.DocumentNode != null)    
{     
     foreach(HtmlNode text in htmlDoc.DocumentNode.SelectNodes("//tr/td/div/text()")) 
     {  
      Console.WriteLine(text.InnerText); 
     } 
} 
+0

Błąd „HtmlAgilityPack.HtmlDocument” nie zawiera definicji „DocumentElement” i żadna metoda rozszerzenie „DocumentElement” akceptującą pierwszy argument typu „” mógł HtmlAgilityPack.HtmlDocument zostanie znaleziony błąd "HtmlAgilityPack.HtmlDocument" nie zawiera definicji "DocumentElement" i nie istnieje metoda rozszerzenia "DocumentElement" akceptująca pierwszy argument typu "HtmlAgilityPack.HtmlDocument". –

+0

@cybernate im otrzymuje błąd powyżej –

+0

to jest 'DocumentNode' –

Powiązane problemy