Capybara +下载和使用文件

时间:2016-07-13 07:56:04

标签: ruby capybara

我正在使用Capybara浏览网站上的登录信息,然后下载一些文件(我正在自动执行我必须要做的频繁处理)。我尝试了一些不起作用的东西,我希望有人可能知道解决方案......

  1. 我正在执行两个链接。点击,但是当一个文件将开始下载(这是使用Chrome Selenium驱动程序)时,capybara似乎在此之后停止运行。在另一个链接上运行.click没有做任何事情......我认为这是因为它在技术上不再在页面上(因为它遵循下载链接)但我尝试重新访问页面以点击第二个链接而不是工作要么。

    1. 假设我可以正常工作,我真的希望能够下载到我的脚本位置而不是我的下载文件夹,但我已经尝试了我在网上找到的每个配置文件配置,似乎没有改变它。

    2. 由于前两个问题,我决定尝试wget ...但是我需要继续从capybara的会话进行身份验证。是否可以从水豚拉出会话数据(只是cookie?)并将其插入到wget或curl命令中?

  2. 谢谢!

1 个答案:

答案 0 :(得分:0)

对于#3 - 访问cookie取决于驱动程序 - 在selenium中它是

page.driver.browser.manage.all_cookies

或者您可以使用https://github.com/nruth/show_me_the_cookies gem来规范大多数Capybaras驱动程序的访问。使用这些cookie,您可以将它们写入文件,然后使用wget的--load-cookies选项(curl中的--cookie选项)

对于#1,您需要提供有关您获得的任何错误的更多信息,什么是current_url,什么做"无法正常工作"实际意味着等等