I wrote up a script to take screenshots of randomized images from Fractal Machine, which is a really cool fractal generator. To run this, I would a local copy of the html file for the site, otherwise you’ll be generating a lot of needless load on their side.

var page = require('webpage').create(); page.viewportSize = { width: 400, height: 400 }; var num = 0; var system = require('system'); if (system.args.length > 1) { num = system.args[1]; } function waitFor(testFx, onReady, timeOutMillis) { var maxtimeOutMillis = timeOutMillis ? timeOutMillis : 50, start = new Date().getTime(), condition = false, interval = setInterval(function () { if; //< defensive code } else { if (!condition) { typeof (onReady) === "string" ? eval(onReady) : onReady(); clearInterval(interval); } else { console.log("'waitFor()' finished in " + (new Date().getTime() - start) + "ms."); typeof (onReady) === "string" ? eval(onReady) : onReady(); //< Do what it's supposed to do once the condition is fulfilled clearInterval(interval); //< Stop this interval } } }, 50); }; page.open('fractalmachine.html', function () { waitFor( function () { return page.evaluate(function () { return window.document.getElementById('controls') != undefined; }); }, function () { page.evaluate(function() { var fract = window.fract; fract.random(); fract.zoomnudge(-1); var controls = window.document.getElementById('controls'); controls.style.visibility = 'hidden'; }); page.render('fractal' + num + '.png'); phantom.exit(); }, 50); });