无法使用无头模式 Selenium 定位元素

由于此限制,我无法使用无头模式定位元素“所有用户在访问我们的网站时都必须使用谷歌浏览器。” 此限制是我们的管理员添加的,因此用户只能使用 Google chrome。


我的代码是


@Test(priority = 1)

    public void setupApplication() throws IOException {

        /*

         * open browser (GoogleChrome) and enter user credentials

         */

        ChromeOptions options = new ChromeOptions();

        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");


        driver = new ChromeDriver(options);

        driver.get("link"); 

        log.info("Launching chrome browser");


        File scrFile = ((TakesScreenshot)driver).getScreenshotAs(OutputType.FILE);

        FileUtils.copyFile(scrFile, new File("C:/Automation Testing/scr3.png"));

    }

不幸的是,我无法显示我们的链接。我的问题是如何绕过它并找到元素?

http://img1.mukewang.com/616fd2aa0001bbdd10730208.jpg

MMTTMM
浏览 644回答 1
1回答

当年话下

更新如果您希望绕过无头代理足迹,请附加以下参数:--user-agent=Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.50 Safari/537.36注意:您应用于 user-agent 参数的任何版本都将显示在请求标头信息中。...或与您的项目的“管理员”交谈,以便他们可以将无头 chrome 代理包含在白名单中。这是来自 chrome 的正常代理信息:用户代理:Mozilla/5.0(Windows NT 10.0;Win64;x64)AppleWebKit/537.36(KHTML,如 Gecko)Chrome/69.0.3497.100 Safari/537.36这是无头镀铬用户代理:Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/69.0.3497.100 Safari/537.36如您所见,无头铬代理被称为:HeadlessChrome
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java