使用带有c#的HtmlAgilityPack来查找嵌套的重复类名称部分

时间:2013-03-02 17:30:11

标签: c# html-parsing html-agility-pack

我无法弄清楚查询(XPath?)是什么来获取嵌套元素,如下所示。我想要让“200”超出范围。我所知道的事情肯定是外面的类是“top2 bigone”是一个div,我希望其中的内容与“top2 bigone”类。我把我的C#放在下面当然不起作用。

感谢

<html>
<body>
    <div class='top1 bigone'>
        <span class='counts numbers'>100</span>
    </div>

    <div class='top2 bigone'>
        <span class='counts numbers'>200</span>
    </div>
</body>
</html>

我的破码:

var input4 =
            (from inputx in htmlDoc.DocumentNode.Descendants("top2 bigone")
             where inputx.Attributes.Count > 0 && inputx.Attributes["class"].Value == "counts numbers"
             select inputx).FirstOrDefault();

1 个答案:

答案 0 :(得分:2)

试试,测试和工作:

HtmlNode node = doc.DocumentNode.SelectSingleNode("//div[@class = 'top2 bigone']//span[@class = 'counts numbers']");

if (node != null)
{
    string number = node.InnerText; // 200
}
else
{
     MessageBox.Show("node = null");
}