2011-01-07 41 views
5

tôi đang cố gắng lấy thông tin từ một bảng html bằng cách phân tích cú pháp html bằng cách sử dụng HtmlAgilityPack.C# sử dụng HtmlAgilityPack để lấy dữ liệu từ bảng HTML

đây là những gì HTML trông giống như:

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

tôi cần phải trích xuất từ ​​trên các giá trị:

AA00857, TPRCF, 16908/2, ETG_C 

cho đến nay tất cả tôi có là thế này:

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

xin vui lòng giúp đỡ!

Trả lời

2

Hãy thử điều này:

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

Lỗi 'HtmlAgilityPack.HtmlDocument' không chứa một định nghĩa cho 'DocumentElement' và không có phương pháp mở rộng 'DocumentElement' chấp nhận một đối số đầu tiên của loại 'HtmlAgilityPack.HtmlDocument' could được tìm thấy Lỗi 'HtmlAgilityPack.HtmlDocument' không chứa định nghĩa cho 'DocumentElement' và không có phương pháp mở rộng 'DocumentElement' chấp nhận đối số đầu tiên của loại 'HtmlAgilityPack.HtmlDocument' có thể được tìm thấy –

+0

@cybernate im nhận được lỗi ở trên –

+0

đó là 'DocumentNode' –

Các vấn đề liên quan