gpt4 book ai didi

headless 模式下的 Selenium FindElement 和 Chrome

转载 作者:行者123 更新时间:2023-12-01 06:00:54 26 4
gpt4 key购买 nike

在 headless 模式下启动 chromedriver.exe 后 following this advice并仅使用这些参数

 options.AddArgument("headless");
options.AddArgument("window-size=1280,960");
chromedriver 以隐形方式打开。但是Selenium的 FindElement()命令在 headless Chrome 页面上找不到任何内容。相反,它抛出这个异常:

An exception of type 'OpenQA.Selenium.NoSuchElementException' occurred in WebDriver.dll but was not handled in user code

Additional information: no such element: Unable to locate element:


Q1:有没有人在 Chrome 的 headless 模式下成功运行 Selenium 命令?
Q2:你能用吗 FindElement chromedriver 在 headless 模式下运行?如果是,你是如何做到的?

阅读更多内容后,也许需要遵循这些思路?将此添加到 Chrome 启动选项中,然后将 chromedriver 连接到它? "remote-debugging-port=9222"但是使用该选项 IWebDriver 和 chromedriver 不会打开。

背景信息:回答,你为什么要这样做?主要原因是测试作为 CI 的一部分运行。这些是在 VM 上运行的测试,可能不支持 1080p 显示器。如果我们以 headless 模式运行它并以这种方式设置分辨率。

最佳答案

在主类中添加以下代码行:

ChromeOptions options = new ChromeOptions(); 
options.setHeadless(true);
options.addArguments("--window-size=1920,1080");
options.addArguments("--disable-gpu");
options.addArguments("--disable-extensions"); options.setExperimentalOption("useAutomationExtension", false); options.addArguments("--proxy-server='direct://'");
options.addArguments("--proxy-bypass-list=*");
options.addArguments("--start-maximized");
options.addArguments("--headless");
WebDriver driver = new ChromeDriver(options);

关于 headless 模式下的 Selenium FindElement 和 Chrome,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45640888/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com