HtmlAgilityPack的SelectSingleNode與SelectNodes根元素

SelectSingleNode與SelectNodes始終從根元素開始算,即便是非根節點調用。html

當使用節點.ChildNodes後,SelectSingleNode與SelectNodes的對象纔會變爲真正的節點,而非根節點。node

 

HtmlNode currentNode = htmlDoc.DocumentNode; // 根節點
currentNode = currentNode.SelectSingleNode("//*[contains(@class,'aa')]"); // 指向非根節點

HtmlNode node2= currentNode.SelectSingleNode("//*[contains(@class,'aa')]"); // 指向根節點的第一個匹配對象,而非currentNode的第一個匹配

 

currentNode = htmlDoc.DocumentNode.FirstChild; // 根節點
currentNode = currentNode.SelectSingleNode("//*[contains(@class,'aa')]"); // 指向非根節點

foreach (HtmlNode node2 in currentNode.ChildNodes)
{
    HtmlNode node3 = node2.SelectSingleNode("//*[contains(@class,'a3')]"); // 這而纔是指向node2中的匹配對象
}
相關文章
相關標籤/搜索