HtmlAgilityPack - 只获得第一场比赛

时间:2013-11-19 16:18:28

标签: vb.net visual-studio html-agility-pack

我是HtmlAgilityPack的新手,我无法弄清楚如何在找到第一场比赛后停止搜索。

Dim site As HtmlAgilityPack.HtmlWeb = New HtmlWeb()
Dim document As HtmlAgilityPack.HtmlDocument = site.Load("website")

For Each table As HtmlNode In document.DocumentNode.SelectNodes("//td[@class='forum_thread_post']//a[@href]")
        ListBox1.Items.Add(table.InnerText)
Next

问题是该网站包含许多td [@ class ='forum_thread_post'节点,我只需要第一个节点。我也尝试过SelectSingleNode,但我甚至无法让它工作,但我认为这是做到这一点的方法?如果单个匹配到文本框更好/更容易我想要。

这是一张图片:http://oi42.tinypic.com/25fmwr5.jpg 我想从图片中获得标题或替代

1 个答案:

答案 0 :(得分:1)

SelectSingleNode出了什么问题?

Dim table = document.DocumentNode.SelectSingleNode("//td[@class='forum_thread_post']//a[@href]")
ListBox1.Items.Add(table.InnerText)

如果InnerText可能为空:

Dim tables = document.DocumentNode.SelectNodes("//td[@class='forum_thread_post']//a[@href]")
Dim firstNotEmpty = tables.FirstOrDefault(Function(t) Not String.IsNullOrWhiteSpace(t.InnerText))