3

有没有办法用 ruby​​ 禁用 Chromedriver 中的图像?有一个类似的问题,但它涉及 C#,我不确定如何将它移植到 ruby​​。

在 Selenium ChromeDriver 中禁用图像

4

4 回答 4

4

对于遇到此问题并使用 chrome headless 的任何人,以下是禁用图像的方法。

options = Selenium::WebDriver::Chrome::Options.new(args: ['headless', '--blink-settings=imagesEnabled=false'])
@driver = Selenium::WebDriver.for(:chrome, options: options)
于 2017-11-28T18:07:40.670 回答
0

看起来它需要将哈希发送到“profile.default_content_settings”Chrome 配置文件设置。我会尝试这样的事情:

profile = Selenium::WebDriver::Chrome::Profile.new
profile["profile.default_content_settings"] = { :images => '2' }

@driver = Selenium::WebDriver.for(:chrome, :profile => profile)
于 2013-04-28T13:27:36.187 回答
0

自从@bbbco 添加他的答案以来,要设置的标志已经改变。正确的标志是:"profile.managed_default_content_settings.images"制作工作代码:

profile = Selenium::WebDriver::Chrome::Profile.new
profile["profile.managed_default_content_settings.images"] = 2

@driver = Selenium::WebDriver.for(:chrome, :profile => profile)
于 2016-12-19T01:23:09.370 回答
0

禁用通知和图像:

Capybara.register_driver :selenium_chrome do |app|
  prefs = { "profile.managed_default_content_settings.notifications" => 2 }

  caps = Selenium::WebDriver::Remote::Capabilities.chrome(chrome_options: { prefs: prefs })

  profile = Selenium::WebDriver::Chrome::Profile.new
  profile["profile.default_content_settings"] = { :images => '2' }

  options = Selenium::WebDriver::Chrome::Options.new(args: ['headless', '--blink-settings=imagesEnabled=false'])

  Capybara::Selenium::Driver.new(
    app,
    browser: :chrome,
    desired_capabilities: caps,
    profile: profile,
    options: options
  )
end
于 2018-06-19T19:43:40.510 回答