/** * This script will capture a screenshot of a twitter account page * * Usage $ casperjs screenshot.coffee */ var casper = require('casper').create({ viewportSize: { width: 1024, height: 768 } }); var twitterAccount = casper.cli.get(0); var filename = casper.cli.get(1); if (!twitterAccount || !filename || !/\.(png|jpg|pdf)$/i.test(filename)) { casper.echo("Usage $ casperjs samples/screenshot.coffee "); casper.exit(); } casper.start('https://twitter.com/#!/' + twitterAccount, function() { this.waitForSelector('.tweet-row', function() { this.captureSelector(filename, 'html'); this.echo("Saved screenshot of " + this.getCurrentUrl() + " to " + filename); }, function() { this.die('Timeout reached. Fail whale?').exit(); }, 12000); }); casper.run();