我们可以添加参数inprivate 以使用 Selenium WebDriver 以私有模式打开 Edge Chromium。并且,添加参数 headless 和 disable-gpu 以使用 Selenium WebDriver 以无头模式打开 Edge Chromium。
请检查以下步骤:
第一步
从here下载Selenium 4.00-alpha05的Java/C#绑定。
从this page下载匹配版本的Microsoft Edge Driver。
第 2 步:
使用 Selenium WebDriver 在私有模式下打开 Edge Chromium:
Java 代码:
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.edge.EdgeDriver;
import org.openqa.selenium.edge.EdgeOptions;
public class Edgeauto {
public static void main(String[] args) {
System.setProperty("webdriver.edge.driver", "D:\\webdriver\\msedgedriver.exe");
EdgeOptions edgeOptions = new EdgeOptions();
edgeOptions.addArguments("-inprivate");
WebDriver driver = new EdgeDriver(edgeOptions);
driver.get("https://bing.com");
}
}
C#代码:
using OpenQA.Selenium.Edge;
using System.Threading;
namespace ecwebdriver
{
public class edgewebdriver
{
static void Main(string[] args)
{
EdgeOptions edgeOptions = new EdgeOptions();
edgeOptions.UseChromium = true;
edgeOptions.BinaryLocation = @"C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe";
edgeOptions.AddArgument("-inprivate");
var msedgedriverDir = @"E:\webdriver";
var driver = new EdgeDriver(msedgedriverDir, edgeOptions);
driver.Navigate().GoToUrl("https://bing.com");
Thread.Sleep(3000);
driver.Close();
}
}
}
使用 Selenium WebDriver 在无头模式下打开 Edge Chromium
C#代码:
using OpenQA.Selenium.Edge;
using System.Threading;
namespace ecwebdriver
{
public class edgewebdriver
{
static void Main(string[] args)
{
EdgeOptions edgeOptions = new EdgeOptions();
edgeOptions.UseChromium = true;
edgeOptions.BinaryLocation = @"C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe";
edgeOptions.AddArgument("headless");
edgeOptions.AddArgument("disable-gpu");
var msedgedriverDir = @"E:\webdriver";
var driver = new EdgeDriver(msedgedriverDir, edgeOptions);
driver.Navigate().GoToUrl("<website url>");
Thread.Sleep(3000);
driver.Close();
}
}
}
注意:将代码中的webdriver路径和网址改成自己的。
如果您想在私有模式和无头模式下启动边缘铬。 EdgeOptions 应如下所示:
EdgeOptions edgeOptions = new EdgeOptions();
edgeOptions.UseChromium = true;
edgeOptions.AddArgument("-inprivate");
edgeOptions.AddArgument("headless");
edgeOptions.AddArgument("disable-gpu")
编辑
如果使用 Selenium 3 版本,我们应该使用 NuGet CLI 或 Visual Studio 将 Microsoft.Edge.SeleniumTools 和 Selenium.WebDriver 包添加到我们的 .NET 项目中。更多详情请查看this link。
然后,添加以下引用:
using Microsoft.Edge.SeleniumTools;
并参考以下 C# 代码(记得将路径更改为您自己的):
EdgeOptions edgeOptions = new EdgeOptions();
edgeOptions.UseChromium = true;
edgeOptions.BinaryLocation = @"C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe";
edgeOptions.AddArgument("-inprivate");
//edgeOptions.AddArgument("headless");
//edgeOptions.AddArgument("disable-gpu");
var msedgedriverDir = @"E:\webdriver\edgedriver_win64_81_0_416_77\edgedriver_win64";
var driver = new EdgeDriver(msedgedriverDir, edgeOptions);
driver.Navigate().GoToUrl("https://www.google.com");
Thread.Sleep(3000);
driver.Close();
[注意] EdgeOptions 和 EdgeDriver 位于 Microsoft.Edge.SeleniumTools 命名空间中,而不是 OpenQA.Selenium.Edge 命名空间中。