【发布时间】:2015-03-25 04:42:24
【问题描述】:
我对@987654322@ 很陌生,所以我可能误解了一些东西。我要做的是通过单击链接下载带有Capybara 和Headless gem 的文件。在这种情况下,我使用Vagrant page 对其进行测试。
我正在使用以下代码来尝试实现它:
require 'selenium-webdriver'
require 'capybara'
require 'headless'
class MyDownloader
include Capybara::DSL
def initialize
headless = Headless.new(:destroy_at_exit => true)
headless.start
Capybara.configure do |config|
config.default_driver = :selenium
end
profile = Selenium::WebDriver::Firefox::Profile.new
profile['browser.download.dir'] = '/tmp'
profile['browser.helperApps.neverAsk.saveToDisk'] = 'application/octet-stream'
profile['browser.helperApps.alwaysAsk.force'] = false
profile['browser.download.manager.showWhenStarting'] = false
Capybara.register_driver :firefox do |app|
Capybara::Selenium::Driver.new(app,
browser: :firefox,
profile: profile,
)
end
end
def download_stuff
visit 'https://www.vagrantup.com/download-archive/v1.7.1.html'
click_link('here')
end
end
MyDownloader.new.download_stuff
sleep 10
我可以看到下载已经开始(/tmp 目录中有一个.part 文件),但是即使我等待很长时间(对于一个非常小的文件,请参阅 10 秒睡眠)它没有'未完成。
我做错了什么?
【问题讨论】:
标签: ruby selenium capybara headless