【问题标题】:Keep selenium out of focus for user让用户不关注硒
【发布时间】:2021-11-10 01:27:33
【问题描述】:

我在 C# 中使用硒。我很好奇是否有一种方法可以做到,这样作为用户你仍然可以做你正在做的事情而不会被硒打断。例如,如果我正在输入某些内容并且 selenium 打开了一个新选项卡,我的鼠标会聚焦在它打开的选项卡上并且不允许我输入,除非我再次单击我正在输入的位置。这是在代码中还是在 Windows 设置中执行的操作?

【问题讨论】:

    标签: c# windows selenium google-chrome selenium-chromedriver


    【解决方案1】:

    以无头模式运行浏览器,在这种情况下浏览器在没有GUI的情况下运行,因此不会有任何中断

    现在所有浏览器都支持 headless 标志,在创建浏览器实例时添加 headless 参数

    以前像 phantomjs 这样的无头浏览器曾经使用 webkit 渲染引擎,但现在 chrome 已内置无头支持并使用相同的渲染引擎闪烁

    所以没有质量影响

    【讨论】:

    • 虽然我知道使用无头模式,但由于有扩展,我不能使用无头模式。我特别想找到一种不使用无头的方法。不过谢谢。
    【解决方案2】:

    你可以在headless mode.

    基本上在headless mode 中,就像名字听起来一样,there's no windows。您甚至不需要系统中的浏览器。

    代码:

    var chromeOptions = new ChromeOptions();
    chromeOptions.AddArgument("--headless");
    chromeOptions.addArguments("window-size=1920,1080");
    

    【讨论】:

    • 虽然我知道使用无头模式,但由于有扩展,我不能使用无头模式。我特别想找到一种不使用无头的方法。不过谢谢。
    • 您可以在虚拟机中部署脚本。
    • 我可以这样做让它无头吗?
    • 比如让用户作为他们的用户界面,但硒在他们看不到的虚拟机上?
    • 在 VM 中您不会做很多事情,或者如果您可以或您的公司负担得起 teamcity,那就太好了!
    猜你喜欢
    • 2013-03-20
    • 1970-01-01
    • 2017-05-20
    • 2017-01-19
    • 1970-01-01
    • 2012-10-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多