Selenium GeckoDriver 获取启动的驱动程序实例的 IP 和端口号
Selenium GeckoDriver get IP and Port no of the launched driver instance
我正在使用 Selenium 3.4、Geckodriver 0.17。
我使用以下代码启动 FirefoxDriver
System.setProperty("webdriver.gecko.driver", "geckodriver.exe");
FirefoxDriver driver = new FirefoxDriver();
driver.get("http://www.bing.com");
System.out.println(driver.getSessionId());
有没有办法获取启动的驱动程序实例的 IP 和端口?
日志中打印了我要的数据
1499170600204 geckodriver INFO Listening on 127.0.0.1:38840
1499170601127 geckodriver::marionette INFO Starting browser C:\Program Files\Mozilla Firefox\firefox.exe with args ["-marionette"]
[GFX1]: Potential driver version mismatch ignored due to missing DLLs igd10umd32 v= and igd10iumd32 v=
1499170608388 Marionette INFO Listening on port 12793
Jul 04, 2017 5:46:48 PM org.openqa.selenium.remote.ProtocolHandshake createSession
INFO: Detected dialect: W3C
输出的第一行127.0.0.1:38840打印了我想要的信息。我不想解析日志,因为我将成为 运行 并行驱动程序。
RemoteWebDriver 有 getCommandExecutor
方法。
可以将其类型转换为 HttpCommandExecutor
和 getAddressOfRemoteServer()
方法 returns URL。
HttpCommandExecutor ce = (HttpCommandExecutor) driver.getCommandExecutor();
System.out.println(ce.getAddressOfRemoteServer());
我正在使用 Selenium 3.4、Geckodriver 0.17。
我使用以下代码启动 FirefoxDriver
System.setProperty("webdriver.gecko.driver", "geckodriver.exe");
FirefoxDriver driver = new FirefoxDriver();
driver.get("http://www.bing.com");
System.out.println(driver.getSessionId());
有没有办法获取启动的驱动程序实例的 IP 和端口?
日志中打印了我要的数据
1499170600204 geckodriver INFO Listening on 127.0.0.1:38840
1499170601127 geckodriver::marionette INFO Starting browser C:\Program Files\Mozilla Firefox\firefox.exe with args ["-marionette"]
[GFX1]: Potential driver version mismatch ignored due to missing DLLs igd10umd32 v= and igd10iumd32 v=
1499170608388 Marionette INFO Listening on port 12793
Jul 04, 2017 5:46:48 PM org.openqa.selenium.remote.ProtocolHandshake createSession
INFO: Detected dialect: W3C
输出的第一行127.0.0.1:38840打印了我想要的信息。我不想解析日志,因为我将成为 运行 并行驱动程序。
RemoteWebDriver 有 getCommandExecutor
方法。
可以将其类型转换为 HttpCommandExecutor
和 getAddressOfRemoteServer()
方法 returns URL。
HttpCommandExecutor ce = (HttpCommandExecutor) driver.getCommandExecutor();
System.out.println(ce.getAddressOfRemoteServer());