【问题标题】:Selenium WebDriver - changing browser's language on linuxSelenium WebDriver - 在 linux 上更改浏览器的语言
【发布时间】:2018-01-18 18:22:35
【问题描述】:

如here 所述,在 PC 上运行时,通过 selenium WebDriver 以不同的语言打开浏览器(谷歌浏览器)可以正常工作。但是在基于 linux 的系统或 mac-os 上尝试它时,它根本不起作用,并且浏览器以它的默认语言打开。我尝试使用不同的语言代码,例如“es_ES”或“es-ES”而不是“es”,但没有任何帮助。是 linux 的不同语言代码,还是操作 Web 驱动程序而不使用“--lang”命令的不同方式?

谢谢。

【问题讨论】:

    标签: java google-chrome selenium selenium-webdriver automation


    【解决方案1】:

    我没有尝试过,但我认为您可以将 chrome 本身的设置更改为:-

    设置 -> 语言 -> 添加语言。

    在那里添加您的语言并尝试一下。如果需要,请删除其他语言。

    对于 IE,请参考以下链接:-

    http://www.reliply.org/info/internet/http-accept-lang.html

    我还在您共享的同一链接上找到了代码。你试过了吗?

    DesiredCapabilities jsCapabilities = DesiredCapabilities.chrome();
    ChromeOptions options = new ChromeOptions();
    Map<String, Object> prefs = new HashMap<>();
    prefs.put("intl.accept_languages", language);
    options.setExperimentalOption("prefs", prefs);
    jsCapabilities.setCapability(ChromeOptions.CAPABILITY, options);
    

    来源:-

    Set Chrome's language using Selenium ChromeDriver

    【讨论】:

    • 更改设置是有问题的,因为我需要它自动发生 - 它在远程机器上运行。关于第二段代码 - 我已经尝试过了。它没有帮助。浏览器仍以英文打开。
    • 是的,我能理解 .. 你有没有通过代码尝试过第二个方法
    【解决方案2】:

    也许你还需要设置 prefs > intl > accept_language: en-GB

    "desiredCapabilities": { "browserName": "chrome", "chromeOptions": { "args": ["--lang=en-GB"], "prefs": { "intl": { "accept_languages": "en-GB" } } } }

    【讨论】:

      【解决方案3】:

      正如您在developer.chrome.com 中看到的那样,有一种系统相关的方法可以为 Chrome 设置语言。在 Linux 上,需要一个环境变量。

      我创建了一个这样的 Bash 脚本:

      #!/bin/sh
      
      LANGUAGE="en" "/home/plap/projects/pdf-exporter/chromedriver" $*
      

      然后我用脚本的路径代替真正的chromedriver可执行文件的路径。

      此外,由于我需要以编程方式切换语言,因此我编写了代码以在每种所需的新语言中以编程方式保存这样的脚本。确实代码调用:

      System.setProperty("webdriver.chrome.driver", executableFile.getAbsolutePath());
      

      与new ChromeDriver(options) 一起在同步块中...是的,这太可怕了!

      【讨论】:

        猜你喜欢
        • 2016-01-06
        • 1970-01-01
        • 2019-02-05
        • 1970-01-01
        • 2018-10-30
        • 1970-01-01
        • 2018-10-30
        • 2017-06-15
        • 2019-02-17
        相关资源
        最近更新 更多