2013-05-15 47 views
0

我一直在報廢很長一段時間,現在剛開始學習HtmlAgilityPack。如何循環行HtmlAgilityPack

我不知道如何循環通過項目,因爲它每次都帶回相同的項目。

代碼:

HtmlNodeCollection nodesMatchingXPath = mainNode.SelectNodes("//tr[@class='ad_listitem']"); 
       if (nodesMatchingXPath.Count > 0) 
       { 
        foreach (HtmlNode hn in nodesMatchingXPath) 
        { 

         HtmlNode title = hn.SelectSingleNode("//a[@class='name_psb_link hover_text_decoration']"); 
         if (title != null) 
         { 
         // SAME TITLE EACH TIME MEANING SOMETHING TO DO WITH XPATH 
         } 
        } 
       } 

我看到它doea得到所有的項目作爲計數是200,但不知道這是否是通過他們什麼禮的方式來循環做其帶回路徑每次都有相同的信息,也許它是在整個文檔上搜索而不是單個節點。

+0

向我們展示您正在運行的HTML。 – Arran

回答

1

/開始的XPath表達式(如"//a[@class='name_psb_link hover_text_decoration']")總是從根開始,而不是從當前節點開始!

.(如".//a[@class='name_psb_link hover_text_decoration']")開始,從當前節點開始。

+0

對不起,現在可能已經做了別的事情:)。 – confusedMind