如何将 FirefoxDriver 附加到 Firefox 的 运行 实例?
How can I attach FirefoxDriver to a running instance of Firefox?
我已经用参数 --start-debugger-server 61300
启动了 firefox。
FirefoxOptions firefoxOptions = new FirefoxOptions();
firefoxOptions.AddAdditionalCapability("debuggerAddress", "127.0.0.1:61300");
var d = new FirefoxDriver(firefoxOptions);
d.Navigate().GoToUrl("https://google.com/");
如何将驱动程序附加到 firefox 的 运行 实例,以便我可以根据需要跳入和跳出控制它,而不是每次都使用随机端口启动一个新实例?
经过测试,我找到了一个可行的方法。
使用 jsakamoto 的 Selenium.WebDriver.GeckoDriver.Win64 nuget 包。
我运行使用命令行的firefox:
"C:\Program Files\Mozilla Firefox\firefox.exe" --marionette -foreground -no-remote
然后我创建默认服务并使用端口 2828 进行连接,这是 marionette 记录的默认端口。
FirefoxOptions firefoxOptions = new FirefoxOptions();
FirefoxDriverService firefoxDriverService = FirefoxDriverService.CreateDefaultService();
firefoxDriverService.HideCommandPromptWindow = false;
firefoxDriverService.BrowserCommunicationPort = 2828;
firefoxDriverService.ConnectToRunningBrowser = true;
var driver = new FirefoxDriver(firefoxDriverService, firefoxOptions);
driver.Navigate().GoToUrl("https://youtube.com/");
如果已经有geckodriver实例运行正在连接,需要先关闭。
我已经用参数 --start-debugger-server 61300
启动了 firefox。
FirefoxOptions firefoxOptions = new FirefoxOptions();
firefoxOptions.AddAdditionalCapability("debuggerAddress", "127.0.0.1:61300");
var d = new FirefoxDriver(firefoxOptions);
d.Navigate().GoToUrl("https://google.com/");
如何将驱动程序附加到 firefox 的 运行 实例,以便我可以根据需要跳入和跳出控制它,而不是每次都使用随机端口启动一个新实例?
经过测试,我找到了一个可行的方法。 使用 jsakamoto 的 Selenium.WebDriver.GeckoDriver.Win64 nuget 包。
我运行使用命令行的firefox:
"C:\Program Files\Mozilla Firefox\firefox.exe" --marionette -foreground -no-remote
然后我创建默认服务并使用端口 2828 进行连接,这是 marionette 记录的默认端口。
FirefoxOptions firefoxOptions = new FirefoxOptions();
FirefoxDriverService firefoxDriverService = FirefoxDriverService.CreateDefaultService();
firefoxDriverService.HideCommandPromptWindow = false;
firefoxDriverService.BrowserCommunicationPort = 2828;
firefoxDriverService.ConnectToRunningBrowser = true;
var driver = new FirefoxDriver(firefoxDriverService, firefoxOptions);
driver.Navigate().GoToUrl("https://youtube.com/");
如果已经有geckodriver实例运行正在连接,需要先关闭。