I tried to scrape the data from within the single request like in the code bellow but it doesn't work. When I tried just one procedure it worked. How to call multiple procedures within one request procedure?
var fs = require('fs');
var request = require('request');
var cheerio = require('cheerio');
var link = "www.google.com";
request(link, function (error, response, html) {
if (!error && response.statusCode == 200) {
var $ = cheerio.load(html);
//scrape class
$('.someclass').filter(function () {
var data = $(this);
var description = data.html();
//write data to file
fs.appendFile('description.txt', description + "\n", function (err) {
if (err)
throw err;
});
});
//scrape class1
$('.someclass1').filter(function () {
var data = $(this);
var description1 = data.html();
//write data to file
fs.appendFile('description1.txt', description1 + "\n", function (err) {
if (err)
throw err;
//console.log('The "description" was appended to file!');
});
});
//scrape class2
$('.someclass2').filter(function () {
var data = $(this);
var description2 = data.html();
//write data to file
fs.appendFile('description2.txt', description2 + "\n", function (err) {
if (err)
throw err;
//console.log('The "description" was appended to file!');
});
});
}
});