VB.NET从Webbrowser1获取URL

时间:2011-08-05 12:51:00

标签: vb.net

如何获取此网址并将其粘贴到文本框中?

退出(Kassy Daniels)·帮助

来自webbrowser1

我希望它抓住/logout.php? url导致每个用户不同

只需按一下按钮

即可将其粘贴到文本框1中

1 个答案:

答案 0 :(得分:1)

假设您的网络浏览器为WebBrowser1

使用WebBrowser1.Document.Links可以获得页面上所有链接的HTMLElementCollection

您可以遍历这些内容,并检查每个链接的OuterHtml元素(这将为您提供包含原始链接,ID等的字符串)以查找您要查找的文本(在这种情况下logout?)。

使用substring命令,提取该URL,并删除周围的文本,然后将其插入文本框中。

更新:使用Firebug或您喜欢的DOM工具,您可以发现注销链接位于文档的根div中

    Dim rootDiv As HtmlElement = WebBrowser1.Document.GetElementById("root")
    Dim links As HtmlElementCollection = rootDiv.GetElementsByTagName("a")
    Dim index As Integer
    For i As Integer = 0 To links.Count - 1
        If links(i).InnerHtml.Contains("Logout") Then
            index = i
            Exit For
        End If
    Next i

    Dim stringofLink As String = links(index).OuterHtml

如果页面在结构上发生变化,这应该对它有一定的弹性,但您可能需要进一步概括它。处理stringofLink然而你想要分解它(找到你需要的&符号,然后从问号复制到那一点)。