Selenium + Capybara:运行 Chrome 参数在 Ubuntu 中

Selenium + Capybara: run Chrome with parameters in Ubuntu

在容器中 运行 时,Chrome 可能会抛出异常,一些关于 PID 的东西,与手头的问题完全无关。

要解决此问题,您必须 运行 chrome 如:

google-chrome --no-sandbox --user-data-dir /root

问题是,我如何将 --no-sandbox --user-data-dir /root 部分传递给 Capybara and/or Selenium。

这就是我注册驱动程序的方式

Capybara.register_driver :chrome do |app|
  require 'selenium/webdriver'
  Selenium::WebDriver::Chrome.driver_path =     ENV['CHROMEDRIVER_EXECUTABLE']
  Capybara::Selenium::Driver.new(
   app,
   :browser => :chrome,
   desired_capabilities: {
      "chromeOptions" => {
       "args" => %w{ window-size=1920,1080 }
     }
    }
  )
end

谢谢!

您只需添加更多选项即可 args

"args" => %w{ window-size=1920,1080 no-sandbox user-data-dir=/root }