我想将headybara用于无头浏览器,但我想使用这个驱动程序:Selenium :: WebDriver :: Remote :: Http :: Default.new
如何将此驱动程序用于水豚?需要知道使用该驱动程序而不是poltergeist或webkit的浏览器初始化。
这是capybara中chrome初始化的示例: Capybara :: Selenium :: Driver.new(app,:browser =>:chrome)
答案 0 :(得分:0)
Selenium :: WebDriver :: Remote :: Http :: Default.new不是驱动程序 - 它是一个可供司机使用的http_client - 我想你要求的是使用Selenium :: WebDriver :: Remote :: Bridge的实例,可以使用
完成Capybara::Selenium::Driver.new(app, browser: :remote, ...)
其中......包括其他选项,例如:http_client,:desired_capabilites,:url(将控制实际浏览器的远程服务器的url)
这些问题的标题提到了幻影,但在实际问题中从未提及过。如果那就是你真正想要的那么它就是
Capybara::Selenium::Driver.new(app, browser: :phantomjs, ...)
其中有类似的选项http_client,desired_capabilities,url,args,port
答案 1 :(得分:0)
对于Capybara,你可以在Phantomjs的顶部使用Poltergeist驱动程序。要使用它,您需要按gem install poltergeist
安装它,或将此gem "poltergeist"
添加到您的Gemfile并运行bundle install
。然后向您的env.rb
添加poltergeist选项并更改您的Capybara.javascript_driver = :poltergeist
。请参阅以下示例:
require 'capybara/poltergeist'
Capybara.register_driver :poltergeist do |app|
options = {
:js_errors => false ,
# :timeout => 120,
# :debug => true,
# :inspector => true,
# :window_size => [1280, 1024],
# :logger => false,
# :inspector => false,
# :visible => false,
:js => true,
:timeout => 10000,
:phantomjs_options => %w[--load-images=no]
}
Capybara::Poltergeist::Driver.new(app, options)
end
Capybara.javascript_driver = :poltergeist