如何在phantomjs上使用Capybara与poltergeist一起下载CSV文件?

时间:2014-04-30 16:27:08

标签: ruby-on-rails-3 capybara phantomjs poltergeist

对于集成测试,我需要使用带有Capybara的poltergeist驱动程序下载CSV文件。在selenium(例如firefox / chrom webdriver)中,我可以指定下载目录,它工作正常。但在poltergeist中,有没有办法指定下载目录或任何特殊配置?基本上我需要知道下载的东西如何使用poltergeist,Capybara,Phantomjs。

我可以使用ruby读取服务器响应头作为Hash,但无法读取服务器响应以获取文件内容。任何线索?或者请帮助。

1 个答案:

答案 0 :(得分:2)

最后,我通过在Ruby代码中使用CURL而不使用任何webdriver解决了下载部分。这个想法很简单,首先,我通过CURL提交了登录表单并将cookie保存到我的服务器中,然后使用保存的cookie提交(通过CURL)CVS Export表单

post_data = "p1=d1&p2=d2&p3=d3" `curl -c cookie.txt -d "userName=USERNAME&password=PASSWORD" LOGIN SUBMIT_URL`
csv_data = `curl -X POST -b cookie.txt -d '#{post_data}' SUBMIT_URL_FOR_DOWNLOAD_CSV`