1
Dim myHtml As New HtmlWeb
    Dim myPage As HtmlDocument = myHtml.Load("http://www.mysite.com")
    Dim myNode As HtmlAgilityPack.HtmlNode

    myNode = myPage.DocumentNode.SelectSingleNode("//div[@id='olpDivId']")

在 olpDivid 内部有具有相同类的跨度

<span class="blah><a href="fsdfs1>1</a></span>
<span class="blah><a href="fsdfs1>2</a></span>
<span class="blah><a href="fsdfs1>3</a></span>

问题是在我的 olpDivId 内部有三个具有相同类的跨度,我需要从第二个内部获取文本。

4

1 回答 1

1

我想你正在寻找这个。

var myNode = myPage.DocumentNode.SelectSingleNode("//div[@id='olpDivId']/span[2]/a");

if (myNode != null)
{
    string value = myNode.InnerText.Trim();
}

我用下面的 html 片段测试了这段代码

<div id="olpDivId">
    <span class="blah"><a href="fsdfs1">1</a></span> <span class="blah"><a href="fsdfs1">
        2</a></span> <span class="blah"><a href="fsdfs1">3</a></span>
</div>
于 2012-06-01T09:58:12.010 回答