【问题标题】:I am unable to change language to English using selenium Java我无法使用 selenium Java 将语言更改为英语
【发布时间】:2021-09-04 10:34:21
【问题描述】:

我已经尝试了以下所有可能性,但它们都不适用于英语。虽然他们正在使用其他语言,例如法语和西班牙语等,但不适用于英语(美国和英国)

 ChromeOptions chromeOptions = new ChromeOptions();
 chromeOptions.addArguments("lang=en-GB");
 driver = new ChromeDriver(chromeOptions);
 driver.get(TestData.baseUrl);

还有这个,

 ChromeOptions chromeOptions = new ChromeOptions();
    Map<String, Object> prefs = new HashMap<String, Object>();
    String chrome_locale = "en-usu";
    prefs.put("intl.accept_languages", chrome_locale);
    chromeOptions.setExperimentalOption("prefs", prefs);

【问题讨论】:

  • en-usu 应该是en-us
  • @cruisepandey 试过了。不工作。

标签: java selenium selenium-webdriver automation


【解决方案1】:

在执行下面的代码时,请确保langs.put("language symbol here (originally)", "en"); 这一行的第一个参数应该是网站加载的语言。

ChromeOptions option = new ChromeOptions();
option.addArguments("start-maximized");
option.addArguments("test-type");
 
option.setExperimentalOption("excludeSwitches", Collections.singletonList("enable-automation"));
option.setExperimentalOption("useAutomationExtension", true);


Map<String, Object> prefs = new HashMap<String, Object>();
Map<String, Object> langs = new HashMap<String, Object>();
langs.put("language symbol here (originally)", "en");
prefs.put("translate", "{'enabled' : true}");
prefs.put("translate_whitelists", langs);
option.setExperimentalOption("prefs", prefs);

WebDriver driver = new ChromeDriver(option);

driver.get("Your url");

【讨论】:

  • 您能否发送一个链接,让我可以看到所有语言的语言代码?我想看爱沙尼亚语代码
  • 成功了。但是我怎样才能使它通用呢?在管道中运行时我不知道,原始语言将是什么?
  • @SammarAhmad : W3 学校已经更好地记录了它,在这里查看所有代码 w3schools.com/tags/ref_language_codes.asp
  • 也是为了使其通用,很难了解该语言,因为开发人员不会放置 html[@lang] xpath 或元属性,但请检查您的情况,如果它存在,那么您可以提取它使用 Selenium 的信息,所以你必须在 HTML DOM 下查看是否有任何 lang 属性
猜你喜欢
  • 1970-01-01
  • 2020-09-14
  • 1970-01-01
  • 2021-12-10
  • 1970-01-01
  • 1970-01-01
  • 2019-02-17
  • 1970-01-01
相关资源
最近更新 更多