使用 HTML 敏捷包查找节点

Finding node using HTML agility pack

这里是 google chrome 开发工具,用于获取我正在寻找的元素。

以下是我尝试获取节点的所有不同方法..

HtmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDocument();

            doc.LoadHtml(webObject.Html);

            // HtmlNode footer = doc.DocumentNode.Descendants().SingleOrDefault(y => y. == "boardPickerInner");
            // "//div[@class='boardPickerInner']"
            //var y = (from HtmlNode node in doc.DocumentNode.SelectNodes("//")
            //         where node.InnerText == "boardPickerInner"
            //         select node.InnerHtml);

              HtmlAgilityPack.HtmlNode bodyNode = doc.DocumentNode.SelectSingleNode("//nameAndIcons");

              var xq = doc.DocumentNode.SelectSingleNode("//td[@class='nameAndIcons']");

            var x = doc.DocumentNode.SelectSingleNode("");

            HtmlNode nodes = doc.DocumentNode.SelectSingleNode("//[@class='nameAndIcons']");

            var boards = nodes.SelectNodes("//*[@class='nameAndIcons']");

谁能解释一下我做错了什么..?

您似乎有多个 span 个元素 class="nameAndIcons"。因此,为了获得它们,您可以使用 SelectNodes 函数:

var nodes = doc.DocumentNode.SelectNodes("//span[@class='nameAndIcons'"])