SeleniumでAccept-Languageヘッダを変更する
Seleniumを海外サーバーで動かす場合、言語設定を正しく設定しないと意図しない挙動となる場合がある。
言語設定は、リクエストのAccept-Language
ヘッダを設定すれば良い。
Firefoxの場合
import org.openqa.selenium.*;
import org.openqa.selenium.firefox.*;
FirefoxProfile firefoxProfile = new FirefoxProfile();
firefoxProfile.setPreference("intl.accept_languages", "ja");
FirefoxOptions firefoxOptions = new FirefoxOptions();
firefoxOptions.setProfile(firefoxProfile);
WebDriver webDriver = new FirefoxDriver(firefoxOptions);
Google Chromeの場合
import java.util.*;
import org.openqa.selenium.*;
import org.openqa.selenium.chrome.*;
Map<String, Object> chromePrefs = new HashMap<>();
chromePrefs.put("intl.accept_languages", "ja");
ChromeOptions chromeOptions = new ChromeOptions();
chromeOptions.setExperimentalOption("prefs", chromePrefs);
WebDriver webDriver = new ChromeDriver(chromeOptions);