我试图实现的是提取所有链接,其中包含以http://,https://或/开头的href属性。这些链接位于具有特定类别的表格(tbody> tr> td等)中。我以为我可以指定一个没有整个路径的元素,但它似乎不工作。使用XPath(和HtmlAgilityPack)从Html表中选择所有链接
var table = doc.DocumentNode.SelectSingleNode("//table[@class='containerTable']");
if (table != null)
{
foreach (HtmlNode item in table.SelectNodes("a[starts-with(@href, 'https://')]"))
{
//not working
我不知道任何建议或最佳实践,当涉及到的XPath:我在这个选择的链接线得到一个NullReferenceException。当我查询文档两次时,是否会创建开销?
在我的解决方案中,我为所有应选择的三个不同的''节点提供一个XPath表达式。另外,在文档中查找所有''节点会更加精确和高效(作为另一个答案建议 - // a) – 2010-03-21 04:40:40