为什么使用 Selenium 时,我的程序会出现在资源管理器网络列表中?

为什么使用 Selenium 时,我的程序会出现在资源管理器网络列表中?

我用VB.Net在网页的文本框中插入一些文本,并在同一页面上按下确认按钮。该程序(几行代码)名为“chrome启动器“。

在此处输入图片描述

我一启动该程序,它就立即出现在访问网络的程序列表中,同时出现“chrome驱动程序“。

显然,“cromediver客户端“出现了,可是为什么我的也出现了?”chrome驱动程序“与程序位于同一文件夹中,为什么”chrome启动器“使用网络与它沟通?这样不是更明显吗?”selenium-管理器”,奇怪的是它并没有出现?

按照 pcalkins 的代码请求进行编辑:

  Dim driver As ChromeDriver
  Dim Options As New ChromeOptions

  Options.AddUserProfilePreference("credentials_enable_service", False)
  Options.AddUserProfilePreference("profile.password_manager_enabled", False)
  Options.AddArgument("--window-position=-5000,0")
  Options.AddArgument("start-maximized")
  Options.AddArgument("--ignore-certificate-errors")
  Options.AddExcludedArgument("--enable-automation")
  Options.AddUserProfilePreference("profile.default_content_setting_values.images", 2)

  Dim DriverService = ChromeDriverService.CreateDefaultService
  DriverService.HideCommandPromptWindow = True

  driver = New ChromeDriver(DriverService, Options)
  driver.Navigate().GoToUrl(MyUrl)

  driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(10)

  Dim TextBox = driver.FindElement(By.Id("caringEmail"))
  TextBox.SendKeys(UserTxt)

  Dim submitButton = driver.FindElement(By.ClassName("ta-button"))
  submitButton.Click()

chrome启动器是一个非常简单的程序,它询问一次Selenium 在 MyUrl Html 网页上插入一些文本并按下按钮:为什么会出现在网络程序列表中?Selenium 文件位于程序文件夹中,还有 chromedriver.exe!

注意:如果我在之后注释掉所有代码

 driver.Navigate().GoToUrl(MyUrl)

...该程序仍然出现在网络程序列表中(???)为什么如果我写:

Process.Start(MyUrl)

不是...强制 chromestarter.exe 通过网络发送数据的区别在哪里?

答案1

这可能是因为 Chrome Devtools 协议(CDP)和/或“BIDI”协议,Selenium 可以使用它们通过 socks 通道直接与浏览器通信。 https://www.selenium.dev/documentation/webdriver/bidirectional/

相关内容