var request = require('request');
var cheerio = require('cheerio');
request(url, function (error, response, html) {
if (!error && response.statusCode == 200) {
var $ = cheerio.load(html);
var link = $('.barbar li a');
var Url = link.attr('href');
var Title = link.find('span').first().text();
var results = [Url, Title];
return results;
}
});
console.log(results);
结果未定义......
我想使用结果向HTML页面添加超链接,但我不知道如何访问结果/将它们返回到回调之外。我已经看过其他帖子,但是他们都使用其他库,通常只有一个示例使用范围内的console.log。
答案 0 :(得分:4)
var request = require('request');
var cheerio = require('cheerio');
function doYourThing(callback){
request(url, function (error, response, html) {
if(error){ return callback(error) };
if (!error && response.statusCode == 200) {
var $ = cheerio.load(html);
var link = $('.barbar li a');
var Url = link.attr('href');
var Title = link.find('span').first().text();
var results = [Url, Title];
callback(null, results);
}
});
function main(){
doYourThing(function(err, results){
console.log(err, results);
});
};
main();