我试图从包含2-6个表格与HtmlAgilityPack之间的所有DIV中提取信息。HtmlAgilityPack检查表的数量并找到它们的“标题”
只要有表相同数量的,我可以用
var thirdTable = res.SelectSingleNode("table[3]");
每个表都包含TDS和第一个包含我要检查的名称得到没有任何问题的信息。目前,它是由
<table border="0" cellspacing="1" cellpadding="4" width="100%">
<tbody>
<tr bgcolor="#505050">
<td colspan="2" class="white">
<b>Character Deaths</b>
</td>
</tr>
</tbody>
</table>
var charTest = thirdTable.ChildNodes[0].InnerText.StartsWith(checkInfo);
完成,但由于表量从时间不同时间,我不能,而无需一个NullReferenceException提取信息。
如何检查表的数量,然后确定哪些表存在?
编辑:
var URLCharacter = "http://www..." + tbSearch.Text;
HtmlAgilityPack.HtmlWeb doc = new HtmlAgilityPack.HtmlWeb();
htmldocObject = doc.Load(URLCharacter);
//Find the right contentdiv
var res = htmldocObject.DocumentNode.SelectSingleNode("//div[@class='BoxContent']");
是否要选择文字“角色死亡”?换句话说,你是否想在所有表格的第一个单元格中选择“res”所代表的元素中的文本? – Zasz 2012-08-03 17:19:02
我想检查表的数量,然后检查它们有哪些“标题”,因为我想提取更多的数据。我面临的问题是div内并不总是有相同数量的表。 – Noxious 2012-08-03 18:02:48