Html Agility pack ASP.NET C# 仅选择节点 2 级打印 foreach 中的第一个值

Html Agility pack ASP.NET C# Selecting Nodes 2 levels only Prints 1st value in foreach

嘿,我正在 ASP.NET 开发网络爬虫,并使用 HTML Agility Pack 进行 HTML 解析。 每当我在 table 中循环 Foreach 并想要 SELECT 并获取迭代节点的值时,它只会重复给我第一个值。

这是我的代码

 public void Olxrun(字符串查询)
    {
        字符串 url = "http://olx.com.pk/all-results/?q=" + 查询 + "&page=1" ;
        var webGet = new HtmlWeb();
        var 文档 = webGet.Load(url);

        尝试
        {
            var lnks = document.DocumentNode.SelectNodes("//*[包含(@class,'offer onclick  ')]");

            foreach(lnks中的HtmlNode节点)
            {
                Label1.Text += "
" + node.SelectSingleNode("//*[包含(@class,'price x-large margintop10')]").InnerText; } } 赶上(例外例子) { Label1.Text += "Error"; } }

尝试使用 .//*[contains(@class,'price x-large margintop10')]

// 总是从根元素开始。

.//将从当前节点开始。