Retrieving deleted page data using AJAX in CasperJS

During the execution of the CasperJS script, I need to get and analyze JSON data from another site so that I can use this data to fill out a form on the site that I am actively working on.

How can i do this?

+6
source share
1 answer

You can use __utils__.sendAJAX() :

 var casper = require('casper').create(); var wsurl = 'https://raw.github.com/n1k0/casperjs/master/package.json'; var word; casper.start('http://google.com/', function() { word = this.evaluate(function(wsurl) { try { return JSON.parse(__utils__.sendAJAX(wsurl, 'GET', null, false)).name; } catch (e) { } }, {wsurl: wsurl}); }); casper.then(function() { if (!word) { this.die('unable to retrieve word'); } this.echo('searching for ' + word); this.fill('form[action="/search"]', {q: word}, true); }); casper.run(function() { this.echo(this.getCurrentUrl()); this.exit(); }); 

Execution example (do not forget to go through --web-security=no ):

 $ casperjs test.js --web-security=no searching for casperjs http://www.google.fr/search?hl=fr&source=hp&q=casperjs&gbv=2&oq=&gs_l= 

Hope this helps.

+8
source

All Articles