我坚持以下方案。场景是,在我的网页上我有一些文件,我需要下载那个。当我点击下载按钮时,它会抛出下载窗口。以及如何自动化这件事。我正在使用CasperJS和SlimerJS ....下面是html代码
<ul class="dropdown-menu">
<li>
<li>
<li>
<li>
<a id="export_notebook_gist" href="#">Export Notebook to File</a>
</li>
<li>
<li>
<li>
<li>
</ul>
</ul>
答案 0 :(得分:0)
您可以使用casper的download功能从目标页面下载资源。您所要做的就是找到链接到下载按钮的资源URL并将其传递给casper的下载功能。
这是一个例子
//Download a PDF report
casper.then(function() {
var fs = require('fs');
var dataurl = this.findElUrl('#_2a7a2a0a2a1a0a'); // This is a jQuery function that finds the PDF file's url.
var file = new Date().getTime() + '.pdf';
var fileloc = apppath + 'reports/' + file;
self.download(dataurl, fileloc); // will download PDF to the specified directory
});
找到PDF网址的功能是
casper.findElUrl = function(selector){
var test = this.evaluate(function(selector) {
return $(selector).data('url');
},selector);
return test;
}
顺便说一句,您必须使用casper的客户端脚本将jQuery注入目标页面,如下所示。
var casper = require('casper').create({
pageSettings: {
webSecurityEnabled: false,
loadImages: false,
loadPlugins: false
},
clientScripts: ["./jquery.min.js"]
});
希望这会有所帮助..