【问题标题】:Sending Command Line Parameters to Chrome When Selenium Node StartsSelenium 节点启动时向 Chrome 发送命令行参数
【发布时间】:2014-06-04 14:23:43
【问题描述】:

我在通过批处理脚本启动的 Windows 机器上运行带有 2 个节点的 Selenium Hub。

在这些节点上启动 Chrome 浏览器时

java -jar selenium-server-standalone-2.40.0.jar -role -node -hub http...

我希望有机会在 Chrome 实例启动时为其提供命令行参数。具体来说,我想利用

--user-agent=[user agent]

用于设置 Chrome 发送到网络服务器的 http 用户代理的参数。

你们中有人知道如何解决这个问题吗?

如果尝试过类似的东西

-Dwebdriver.chrome.driver=[path to chromedriver] --user-agent=[user agent]

但是当我这样做时,系统无法找到 chromedriver 可执行文件。

拥有类似的东西很酷

-Dwebdriver.chrome.browser="user-agent=[user agent]"

但我没有发现任何有用的东西。

如果有人能在这里帮助我,那就太好了......

【问题讨论】:

    标签: google-chrome selenium selenium-webdriver


    【解决方案1】:

    希望这正是您正在寻找的。​​p>

    ChromeOptions options = new ChromeOptions();
    options.addArguments("--user-agent=Mozilla/5.0 (iPad; CPU OS 5_0 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Version/5.1 Mobile/9A334 Safari/7534.48.3");
    

    您需要将此选项传递给您的 chrome 功能。

    chrome 的所有命令行开关列表如下。

    http://peter.sh/experiments/chromium-command-line-switches/

    【讨论】:

    • 感谢您的建议。不过,我实际上更希望有一个非语言相关的解决方案(你的只适用于 Java),因为我目前需要使用 Behat(参见 link )框架——也就是说,我正在使用 PHP .
    • 你可以用任何其他 selenium 支持的语言做同样的事情。
    • 使用适当的语言语法即可。
    猜你喜欢
    • 2012-03-15
    • 1970-01-01
    • 1970-01-01
    • 2011-07-22
    • 2017-02-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-04
    • 2021-02-23
    相关资源
    最近更新 更多