【发布时间】:2012-04-03 19:04:11
【问题描述】:
我之前使用过 html 敏捷包,经过一些尝试和错误,取得了不错的效果。我目前正在尝试使用它来返回一个节点集,该节点集带有我通过在 Firefox 中右键单击“复制 XPath”获得的 xpath。我做了一些搜索,我发现浏览器通常会为表格标签添加“tbody”。我尝试删除它但没有运气。这是 Firefox 给我的 xpath:
/html/body/p[3]/table/tbody/tr/td/table/tbody/tr[3]
按原样使用会引发错误:“Value cannot be null. Parameter name: source.”
这发生在网上:
nodeList = htmlDoc.DocumentNode.SelectNodes("/html/body/p[3]/table/tbody/tr/td/table/tbody/tr[3]").ToList();
我将继续阅读,与此同时,如果这对任何人来说都是一个简单的解决方法,我将不胜感激。
更新:这是实际代码:
protected override List<IDataPoint> ReturnDataPointsFromIndividualAddressString(string AddressString)
{
List<IDataPoint> earningsAnnouncements = new List<IDataPoint>(); //Not used, yet..
HtmlWeb hwObject = new HtmlWeb();
HtmlDocument htmlDoc = hwObject.Load(AddressString);
if (htmlDoc.DocumentNode != null)
{
List<HtmlNode> nodeList = new List<HtmlNode>();
nodeList = htmlDoc.DocumentNode.SelectNodes("/html/body/p[3]/table/tbody/tr/td/table/tbody/tr[3]").ToList();
}
}
【问题讨论】:
-
您能发布导致此错误的代码吗?
-
好的,我会更新原帖..