提问人:Cihangir Can 提问时间:4/20/2021 最后编辑:MartinCihangir Can 更新时间:4/20/2021 访问量:385
在不关闭 Selenium Chrome VB.Net 窗口的情况下转到同一窗口中的其他网页
Going to a different web page within the same window without closing the VB.Net Selenium Chrome window
问:
尊敬的论坛成员。
使用下面的代码,我可以使用 selenium 打开 chrome 网络浏览器并转到我想要的互联网地址。我只有一个问题。当我单击 button1 时,chrome 窗口打开并转到 http://google.com/。当我在驱动程序打开时单击 button2 时,它会运行一个单独的 chrome 驱动程序并转到雅虎。这就是我想要的 打开第一个 chrome 窗口并进入 google 后,当我单击BUTTON2“WITHOUT OPENING NEW CHROME”时,我希望它从现有的 CHROME 窗口转到 yahoo.com.我找不到代码。我想在不关闭当前 chrome 引擎的情况下转到另一个链接。我在哪里犯了错误?我请求你的帮助。方面。
Imports OpenQA.Selenium
Imports OpenQA.Selenium.Chrome
Imports OpenQA.Selenium.Support.UI
Imports System.Text
Public Class Form1
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim driver As IWebDriver
driver = New ChromeDriver()
driver.Navigate().GoToUrl("http://google.com/")
End Sub
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
Dim driver As IWebDriver
driver = New ChromeDriver()
driver.Navigate().GoToUrl("http://yahoo.com/")
End Sub
End Class
答:
0赞
Martin
4/20/2021
#1
您可能应该使用一个共享实例,该实例将重用您在按下第一个按钮时创建的现有实例。driver
以下未经测试的代码显示了其工作原理:
Public Class Form1
Dim driver As IWebDriver
Private Sub DoNavigate(address As String)
If (driver Is Nothing) Then
driver = New ChromeDriver()
End If
driver.Navigate().GoToUrl(address)
End Sub
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
DoNavigate("http://google.com/")
End Sub
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
DoNavigate("http://yahoo.com/")
End Sub
End Class
现在,这两个按钮都调用以引起 URL 更改。DoNavigate
功能:DoNavigate
- 检查是否已创建。
driver
- 如果尚未创建,则创建。
driver
- 导航到指定的。
address
评论
IWebDriver