Computing Magazine

Download WebMaster Tool Data Using Casper JS

Posted on the 12 August 2016 by Abhishek Somani @somaniabhi

This is a simple casper js script to automate your process of downloading webmaster tools reports . Google Webmaster does not provide any api to download the data . This simple casperjs script will allow you to download the data and automate the process . please change the google account credentials and also the time period for which you want to download the report .


var page = require('webpage').create();
var xpath = require('casper').selectXPath;
var casper = require('casper').create({
verbose: true,
logLevel: 'debug',
pageSettings: {
loadImages: false, // The WebPage instance used by Casper will
loadPlugins: false, // use these settings
userAgent: 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_5) AppleWebKit/537.4
(KHTML, like Gecko) Chrome/22.0.1229.94 Safari/537.4'
}
});
// print out all the messages in the headless browser context
casper.on('remote.message', function(msg) {
this.echo('remote message caught: ' + msg);
});
// print out all the messages in the headless browser context
casper.on("page.error", function(msg, trace) {
this.echo("Page Error: " + msg, "ERROR");
});
var url = 'https://accounts.google.com/ServiceLogin';
casper.start(url, function() {
// search for 'casperjs' from google form
console.log("page loaded");
this.fill('form#gaia_loginform', {
Email:'test',
Passwd:'test'
}, true);
});
casper.thenEvaluate(function(){
console.log("Page Title " + document.title);
});
var url = 'https://www.google.com/webmasters/tools/top-search-queries?hl=en&siteUrl;=
http://www.javaroots.com/&de;=20150315&db;=20150314&more;=true&type;=queries';
casper.thenOpen(url ,function (status) {
/*var js = page.evaluate(function () {
return document;
});
console.log(JSON.stringify(js)); */
console.log(" trrsadsadsssssss");
});
casper.then(function() {
console.log(" clickingggg first time ");
this.click('#tsq-table-download > div:nth-child(1)');
//this.click(xpath('//*[@class="goog-inline-block jfk-button jfk-button-standard"]'));
});
//casper.waitForSelector(xpath('/html/body/div[11]/div[3]/button[1]'), function() {
casper.waitForSelector('.goog-buttonset-default', function() {
casper.then(function(){
this.capture('abc.png', undefined, {
format: 'png',
quality: 100
});
});
});
casper.then(function() {
console.log(" clickingggg");
//this.click(xpath('/html/body/div[11]/div[3]'));
this.click('.goog-buttonset-default');
});
casper.on('resource.received', function(resource) {
if(resource.url)
{
if(resource.url.indexOf("/top-search-queries-dl") > -1)
{
console.log(" resource url is " + resource.url);
console.log("Downloading csv file");
this.download(resource.url, 'ExportData.csv');
}
}
});
casper.run();

Post Comments and suggestions !!!!

Download WebMaster Tool Data Using Casper


Back to Featured Articles on Logo Paperblog

Magazine