У меня проблема с настройкой предпочтительного (принятого языка) в Chrome без головы с помощью Selenium Webdriver и Ruby. Я использую следующие настройки WebDriver:
Selenium::WebDriver::Chrome.driver_path = @config[<path to the Chrome Driver>]
options = Selenium::WebDriver::Chrome::Options.new
options.add_argument('--headless')
options.add_argument('--disable-translate')
options.add_argument("--lang=de")
Затем драйвер инициализируется с помощью:
@selenium_driver = Selenium::WebDriver.for :chrome, options: options
Все работает нормально, но на некоторых страницах Chrome возвращает английский контент, даже когда я перехожу на URL страницы на немецком языке (например, page.de). В этих случаях драйвер Chrome возвращает содержимое на английском языке из-за внутренней переадресации на страницу page.de/en. Я не указываю путь en в моем запрашиваемом URL.
Я попытался установить язык с помощью предпочтения Webdriver:
options.add_preference('accept_languages', 'de')
вместо add_argument, но это ничего не меняет в поведении.
Кто-нибудь знает, как заставить безголовый Chrome, управляемый Selenium Webdriver в Ruby, запрашивать содержимое страницы на определенном языке или - не оптимально, но это может помочь в качестве обходного пути - прекратить пересылку?
Любая помощь с благодарностью
Лучший
Крид