使用htmlagilitypack从没有ID的嵌套表中获取数据

时间:2017-08-24 00:37:36

标签: c# html-agility-pack

有人可以提供一些示例代码来从下面的嵌套表中获取数据。我想要从第1行到第2行的所有列的数据。如果表中有ID,我可以获取数据,但没有ID。我几乎在互联网上搜索,仍然找不到答案。请帮忙

<div id="Div-content_ID">
<table><tr><td>
<table>
<tr>
<td></td>
<td></td>
<td></td>
</tr>
</table>
</td>
</tr>
<tr><td></td></tr>
<tr>
<td >
<table >
<tr>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
</table>
</td>
</tr>
<tr>
<td>


<table width="100%" cellpadding="3" cellspacing="1" border="0" bgcolor="#d3d3d3">
<tr align="center" valign="middle">
<td>row1 Col 1</td>
<td >row1 Col 2 </td>
<td >row1 Col 3 </td>
<td >row1 Col 4 </td>
<td >row1 Col 5 </td>
<td >row1 Col 6 </td>
<td >row1 Col 7 </td>
<td >row1 Col 8 </td>
<td >row1 Col 9 </td>
<td >row1 Col 10 </td>
<td >row1 Col 11 </td>
<tr>
<tr>
<td>row2 Col 1</td>
<td >row2 Col 2 </td>
<td >row2 Col 3 </td>
<td >row2 Col 4 </td>
<td >row2 Col 5 </td>
<td >row2 Col 6 </td>
<td >row2 Col 7 </td>
<td >row2 Col 8 </td>
<td >row2 Col 9 </td>
<td >row2 Col 10 </td>
<td >row2 Col 11 </td>
</tr>
<tr>
<td>
<table>


<tr>
<td></td><td></td></tr>
</table>
</td>
</tr>
<tr><td></td></tr>
<tr>
<td</td>
</tr>
<tr><td></td></tr>
</table>
</div>

1 个答案:

答案 0 :(得分:0)

1)您的HTML格式不正确:

  • 第一张桌子永远不会被正确关闭。缺少</td> </tr> </table>

  • 在结尾附近有<td></td>对缺少&#39;&#39;

2)使用HTML Agility Pack,您可以选择任何内容,而不仅仅是id或类。因此,只要您的HTML结构保持不变,您就可以选择第一个div,然后从其子项中选择:第一个表,然后是子项:第四行,然后是子项:第一个表。等等

请点击此处查看按表格选择的示例:HTML Agility pack - parsing tables