如何在Visualbasic.net中搜索特定超链接的字符串?

时间:2012-12-19 02:55:35

标签: vb.net string

我有一个程序可以下载网页的源代码,但现在我想在源代码中搜索特定链接,我知道链接是这样编写的:

<a href="/internet/A2/"><b>Geographical Survey Work</b></a>

是否仍然使用“地理调查工作”作为检索链接的标准?我用来将源代码下载到字符串的代码是:

Dim sourcecode As String = ((New Net.WebClient).DownloadString("http://examplesite.com"))

所以只是为了澄清我想输入一个输入框“地理调查工作”,例如“/ internet / A2”在消息框中弹出?我认为可以使用正则表达式来完成,但这有点超出我的意义。任何帮助都会很棒。

1 个答案:

答案 0 :(得分:0)

使用HTMLAgilityPack:

Dim vsPageHTML As String = "<html>... your webpage HTML code ...</html>"
Dim voHTMLDoc.LoadHtml(vsPageHTML) : vsPageHTML = ""
Dim vsURI As String = ""
Dim voNodes As HtmlAgilityPack.HtmlNodeCollection = voHTMLDoc.SelectNodes("//a[@href]")
If Not IsNothing(voNodes) Then
    For Each voNode As HtmlAgilityPack.HtmlNode In voNodes
        If voNode.innerHTML.toLower() = "<b>geographical survey work</b>" Then
            vsURI = voNode.GetAttributeValue("href", "")
            Exit For
        End If
    Next
End If
voNodes = Nothing : voHTMLDoc = Nothing

用vsURI做任何你想做的事。 你可能需要稍微调整一下代码,因为我是徒手写的。