c#htmlagility选择特定的xpath

时间:2017-05-03 22:04:26

标签: c#

我有这个HTML代码:

<div>
<time class="departure"><span></span>value1<time class="return">
<span></span>value2</time>
</div>

我使用下面的c#代码:

    var nodes = doc.DocumentNode.SelectNodes("//time[@class='departure']");
    foreach (var node in nodes)
    {

        Console.WriteLine(node.InnerHtml);
        if (node.InnerText.Trim() == DepartTime)
        {
            ReturnTime = node.SelectSingleNode("time").InnerText; //null reference here 
        }
    }

因此,您可以看到我检查离开时间(DepartTime)是否存在,然后它将返回之后第一个时间元素的下一个非文本值。但这似乎没有工作,我得到异常空引用。

1 个答案:

答案 0 :(得分:0)

通过

解决了
    foreach (var node in nodes)
    {
        if (node.InnerText.Trim() == DepartTime)
        {
            ReturnTime = node.ParentNode.SelectNodes("time")[1].InnerText.Trim();
        }
    }