Я пытаюсь разобрать имена и дни рождения всех президентов США.Сначала я получаю все URL.Ранее я экспортировал модуль, в котором я пытаюсь вернуть объект, содержащий имя и день рождения президента, вызвав запрос с использованием URL.Я не могу получить данные из основного файла js.
Я пытаюсь сделать это без использования обещаний.
Модуль, который я экспортирую:
const request = require('request'); //to make HTML requests
const cheerio = require('cheerio');
const POTUSParse = function(url){
return request(url,(error,response,HTML) => {
if(!error && response.statusCode == 200){
const $ = cheerio.load(HTML);
const presidentName = $("#firstHeading").text();
const bdayString = $(".bday").text();
return {
"name" : presidentName,
"bday" : bdayString
};
}
});
}
module.exports = POTUSParse;
Основной файл JS:
const POTUSParse = require('./getName&BDAYModule');
const request = require('request');
const cheerio = require('cheerio');
request("https://en.wikipedia.org/wiki/List_of_Presidents_of_the_United_States",(error,response,html) => {
if(error || response.statusCode != 200){
return;
}
const wikiURLs = [];
const $ = cheerio.load(html);
$("big a").each((index,rawDOMElement) => {
wikiURLs.push($(rawDOMElement).attr("href"));
});
for(var i=0;i<wikiURLs.length;i++){
console.log(POTUSParse("https://en.wikipedia.org" + wikiURLs[i]));
}
});
Я получаю объект, который возвращает модуль запроса.Как я могу получить возвращаемое значение функции обратного вызова?