Javascript Zombie.js-下载文件支持

Javascript Zombie.js-下载文件支持,javascript,node.js,web-crawler,zombie.js,Javascript,Node.js,Web Crawler,Zombie.js,我正在尝试处理Zombie.js中的下载提示,通过查看我没有看到任何指示如何执行的内容 基本上,我要做的是浏览一个需要身份验证的网站,然后单击该网站上的一个按钮(no href),然后自动进行下载。下载的文件将被重命名并发送到指定的文件夹 有什么办法可以做到这一点吗?据我所知,仔细看看Zombie.js的API,我会说不,这是不可能的 我知道这不是你所希望的答案,但真相并不总是美好的。不妨试试: 您应该能够操作dom…下载 可能需要编写单独的脚本来执行文件重命名 Zombie.js似乎没有提

我正在尝试处理Zombie.js中的下载提示,通过查看我没有看到任何指示如何执行的内容

基本上,我要做的是浏览一个需要身份验证的网站,然后单击该网站上的一个按钮(no href),然后自动进行下载。下载的文件将被重命名并发送到指定的文件夹


有什么办法可以做到这一点吗?

据我所知,仔细看看Zombie.js的API,我会说不,这是不可能的

我知道这不是你所希望的答案,但真相并不总是美好的。

不妨试试:

您应该能够操作dom…下载


可能需要编写单独的脚本来执行文件重命名

Zombie.js似乎没有提供一种方法来直接执行您想要的操作,但它在内部用于下载文件,然后发出一个
响应
事件,您可以监听该事件(请参阅):


这对我来说似乎很有效。

它们是什么类型的下载提示?您是在谈论Windows文件对话框,还是在使用Mac?或者这些是某种javascript提示?我认为这是可能的。如果让我确切地知道它们是什么提示,我可能会帮助您。您想下载什么类型的文件?如果是text/js文件,您可以让浏览器打开它,获取呈现页面的内容并将其保存在文件中。对于图像/可执行文件/其他我不知道的…也值得一看,它位于PhantomJS之上。它对于会话/cookie/身份验证持久性来说特别灵活,我相信它对编写文件和/或下载文件等(基本)支持。
var browser = new Zombie();

browser.on('response', function(request, response) {
    browser.response = response;
});

browser.visit('http://test.com/', function() {
    browser.clickLink('Download the file', function() {
        // the 'response' handler should have run by now
        var fileContents = browser.response.body;
    });
});