HiPages - QA Scrape Challenge - Brian Lo
//Brian Lo QA Scrape challenge 1 Mar 2017 for HiPages
var Xray = require('x-ray');
var x_basic = Xray();
var x_plus = Xray();
var most_recommended_no_basic = 0;
var most_recommended_business_basic = '';
var most_recommended_no_plus = 0;
var most_recommended_business_plus = '';
var url = 'http://www.homeimprovementpages.com.au/search/arborists/nsw/wollongong' ;
console.log('Businesses with the most recommendation on page 1 @ ' + url +' by basic and plus listing');
x_basic( url, '.basic-listing',
[{
Basic_Business_Name : '.basic-listing__title',
Basic_Recommendation : '.basic-listing__recommendations'
}])(function(err, scrape) {
for(var i = 0; i < scrape.length; i++){
var obj = scrape[i];
for (var key in obj){
if (key == 'Basic_Business_Name'){
var basic_business_name = obj[key].split(',')[0];
}
else if (key == 'Basic_Recommendation'){
var basic_rec_value = parseInt(obj[key].split(' ')[0]);
if (basic_rec_value > most_recommended_no_basic){
most_recommended_no_basic = basic_rec_value;
most_recommended_business_basic = basic_business_name;
}
}
}
}
console.log(most_recommended_business_basic + ' is the most recommended basic-listed business with ' + most_recommended_no_basic + ' recommendations');
})
x_plus( url, '.plus-listing',
[{
Plus_Business_Name : '.plus-listing__title',
Plus_Recommendation : '.plus-listing__recommendation-count'
}])(function(err, scrape2) {
for(var i = 0; i < scrape2.length; i++){
var obj = scrape2[i];
for (var key in obj){
if (key == 'Plus_Business_Name'){
var plus_business_name = obj[key];
}
else if (key == 'Plus_Recommendation'){
var regExp = /\(([^)]+)\)/;
var plus_rec_value = parseInt(regExp.exec(obj[key])[1]);
if (plus_rec_value > most_recommended_no_plus){
most_recommended_no_plus = plus_rec_value;
most_recommended_business_plus = plus_business_name;
}
}
}
}
if (scrape2[0] !== 0 ) {
console.log(most_recommended_business_plus + ' is the most recommended plus-listed business with ' + most_recommended_no_plus + ' recommendations');
}
})
no comments