Skip to content

Instantly share code, notes, and snippets.

@rosshinkley
Last active July 22, 2016 18:14
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save rosshinkley/c1873d40e17dd433cc2d to your computer and use it in GitHub Desktop.
Save rosshinkley/c1873d40e17dd433cc2d to your computer and use it in GitHub Desktop.
Download multiple files
var Nightmare = require('nightmare'),
vo = require('vo');
function *start() {
var nightmare = new Nightmare({
show: true,
'download-preferences': {
destination: require('path').resolve(__dirname, 'downloads')
}
});
var counter = 0;
nightmare.on('download-start', function(download){
console.log('download start: ' + JSON.stringify(download,null,3));
counter++;
});
nightmare.on('download-done', function(download){
console.log('download end: ' + JSON.stringify(download, null, 3));
counter--;
});
var dl = yield nightmare.goto('http://www.sample-videos.com')
.click('a[data="153"]')
.click('a[data="48"]')
.click('a[data="55"]')
.wait(3000);
while(counter > 0){
yield nightmare.wait(1000);
}
console.log('all files downloaded');
yield nightmare.end();
}
vo(start)(function() {
console.log('done');
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment