如何使用powershell以应用程序模式启动Chromium Edge selenium webdriver

How to start Chromium Edge selenium webdriver in application mode using powershell

我想使用 powershell 在应用程序模式下启动 Chromium Edge selenium webdriver。

这是在没有 selenium webdriver 的情况下从 powershell 命令行执行此操作的方法:

& "C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe" --app="https://whosebug.com"

这是我目前尝试过的方法,但似乎不起作用。 具体来说,Chromium Edge webdriver window 启动,但不在应用程序模式下。

$optionSettings =  @{
   BrowserName = ''
   BinaryLocation = $pathToDriver
}
$options = New-Object -TypeName OpenQA.Selenium.Chrome.ChromeOptions -Property $optionSettings
$options.addArgument("app='https://whosebug.com'")
$service = [OpenQA.Selenium.Chrome.ChromeDriverService]::CreateDefaultService($pathToDriver, 'msedgedriver.exe')
$driver = New-Object -TypeName OpenQA.Selenium.Chrome.ChromeDriver -ArgumentList $service,$options

我还尝试用以下内容代替 addArgument:

$options.addArgument("app=https://whosebug.com")
$options.addArgument("--app='https://whosebug.com'")
$options.addArgument("--app=https://whosebug.com")

有什么想法吗?

首先,如果您需要通过 Webdriver 启动 Chromium Edge,则需要使用 EdgeDriver 而不是 ChromeDriver。其次,需要使用Selenium 4 webdriver 或以上

这是一个简单的演示,效果很好:

[System.Reflection.Assembly]::LoadFrom("E:\Selenium\WebDriver.dll")

$options = New-Object OpenQA.Selenium.Edge.EdgeOptions
$options.addArguments("--app=https://whosebug.com")
#$options.AcceptInsecureCertificates = $True

$driver = New-Object OpenQA.Selenium.Edge.EdgeDriver("C:\Users\Administrator\Desktop\",$options)

#$driver.Url = "https://whosebug.com"

注意:根据自己的情况修改路径参数