如何通过 Selenium 打开 Chrome 浏览器控制台?
Posted
技术标签:
【中文标题】如何通过 Selenium 打开 Chrome 浏览器控制台?【英文标题】:How to open Chrome browser console through Selenium? 【发布时间】:2019-07-02 12:05:03 【问题描述】:我想通过在 selenium webdriver 中按键盘键 Ctrl
+Shift
+j
打开 chrome 浏览器控制台。
我可以使用 Robot 类执行此操作,但我希望没有 Robot 类。我已经使用了使用 sendKeys 的 Actions 类和 Keys 类。但我无法打开浏览器控制台。
是chrome浏览器版本问题还是操作系统?为什么浏览器控制台没有使用 Action 类和 Keys 类打开。 ?
【问题讨论】:
Actions.sendKeys
无法做到这一点。正如 Javadoc 所说,它将键发送到活动元素(意味着 DOM 的一个元素)。 Ctrl+Shift+J 是浏览器应用程序的热键。 org.openqa.selenium.interactions.Keyboard.sendKeys
似乎可以处理浏览器密钥,但我从未使用过该功能。
【参考方案1】:
要打开 chrome 浏览器控制台,您可以使用带有 --auto-open-devtools-for-tabs
参数的 ChromeOptions
类,如下所示:
测试配置:
Selenium:Selenium 独立服务器 v3.14.0 ChromeDriver:ChromeDriver 2.46.628402 Chrome:谷歌浏览器 72.0.3626.96代码块:
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.chrome.ChromeOptions;
public class A_Chrome_Browser_Console
public static void main(String[] args)
System.setProperty("webdriver.chrome.driver", "C:\\Utility\\BrowserDrivers\\chromedriver.exe");
ChromeOptions options = new ChromeOptions();
options.addArguments("start-maximized");
options.addArguments("--disable-extensions");
options.addArguments("--auto-open-devtools-for-tabs");
WebDriver driver = new ChromeDriver(options);
driver.get("https://www.google.com/");
System.out.println(driver.getTitle());
控制台输出:
Google
浏览器控制台快照:
您可以在Opening inspect (pressing F12) on Chrome via Selenium 中找到基于python 的相关讨论
【讨论】:
谢谢,我试试。 不是控制台,是开发工具。您是如何获得对此投票的? @BVengerov 告诉我screenshot 是否能解决您的困惑 @DebanjanB 默认情况下,“元素”选项卡是打开的,控制台是隐藏的。您可以从答案中的屏幕截图中完美地看到这一点。如果您可以单击“控制台”选项卡打开控制台,那么没有什么可以阻止您在测试中设置断点并通过击键打开它 - 为什么还要费心更改 Chrome 参数。但是,如果您像我一样只有 VNC 处于查看模式,那么这根本没有帮助。 @BVengerov 现在可能只是为了争论,您偏离了原来的反问题。无论打开Elements
选项卡还是Console
选项卡,打开Chrome 浏览器控制台 都有明确的目标。如果您有用例/问题,请随时提出新票。 *** 贡献者将很乐意为您提供帮助。以上是关于如何通过 Selenium 打开 Chrome 浏览器控制台?的主要内容,如果未能解决你的问题,请参考以下文章
如何通过 Selenium 的 --user-data-dir 参数打开 Chrome 配置文件
通过 Selenium 在 Chrome 上打开检查(按 F12)
如何使用selenium 驱动chrome浏览器并且打开方式为手机模式
如何使用selenium 驱动chrome浏览器并且打开方式为手机模式