2010-11-13 37 views
3

我正在使用c#Web.Client下載html字符串。使用c提取html tbody數據#

被返回的HTML的一個小例子是

<tbody class='resultBody ' id='Tbody2'> 
     <tr id='Tr2' class='firstRow'> 
      <td class='cbrow tier_Gold' rowspan='4'> 
       <input type='checkbox' name='listingId' value='452' id='Checkbox2' /> 
      </td> 
      <td class='resNum' rowspan='4'> 
       <div class='node'> 
        B</div> 
      </td> 
      <td class='datarow busName' id='Td2'> 

      </td> 
      <td rowspan='2' class='resLinks'> 
      </td> 
      <td class="hoops" rowspan='2'> 
      </td> 
     </tr> 
     <tr> 
      <td class="datarow"> 
       <dl class="addrBlock"> 
        <dd class="bizAddr"> 
         123 ABC St</dd> 
        </dl> 
      </td> 
     </tr> 
    </tbody> 
    <tbody class='resultBody ' id='Tbody3'> 
     <tr id='Tr3' class='firstRow'> 
      <td class='cbrow tier_Gold' rowspan='4'> 
       <input type='checkbox' name='listingId' value='99' id='Checkbox3' /> 
      </td> 
      <td class='resNum' rowspan='4'> 
       <div class='node'> 
        B</div> 
      </td> 
      <td class='datarow busName' id='Td3'> 

      </td> 
      <td rowspan='2' class='resLinks'> 
      </td> 
      <td class="hoops" rowspan='2'> 
      </td> 
     </tr> 
     <tr> 
      <td class="datarow"> 
       <dl class="addrBlock"> 
        <dd class="bizAddr"> 
         1111 Some St</dd> 
        </dl> 
      </td> 
     </tr> 
    </tbody> 

我感興趣的是HTML的2個元素,但我不知道去的最佳途徑。對我來說,獲得價值的最好方法是從元素

中獲取內部html。任何建議都會很棒!

回答

3
  • 下載HTML Agility Pack (free)
  • 創建一個新的HTMLDocument
  • loadhtml
  • 使用DOM導航或XPath查詢(的SelectSingleNode等)來查找元素的元素
  • 訪問InerHtml你想

該API與XmlDocument類似,但它適用於不是xhtml的html。