0

我已经报废了很长时间,现在才开始学习 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
                       }
                    }
                }

我看到它确实得到了所有项目,因为计数是 200 ,但不确定这是否是循环它们的仪式方式,或者与每次带回相同信息的路径有关,也许是在整个文档上搜索那个单一的节点。

4

1 回答 1

1

/以(如您的)开头的 XPath 表达式"//a[@class='name_psb_link hover_text_decoration']"总是从根开始,而不是从当前节点开始!

.(like ".//a[@class='name_psb_link hover_text_decoration']") 开头以从当前节点开始。

于 2013-05-15T11:35:13.900 回答