Да, я хочу использовать в цикле эти функции и понимаю о чем вы, но для начала мне нужно получать значение с этих функций, когда я прописываю
console.log(getLvl());
я получаю undefined, а когда я пытаюсь после 28 строки вывести
console.log(parse());
получаю 2:
Promise { <pending> }, при том что
console.log(userLvl);
на 26 строке я заменил на
return userLvl;
В итоге мне нужно на данный момент получить значения из функций.
const axios = require('axios');
const cheerio = require('cheerio');
const readline = require('readline').createInterface({
input: process.stdin,
output: process.stdout
});
readline.question('Введите ID пользователя: ', function (answer) {
let userId = answer;
for (let i = 0n; i <= 0n; ++i) {
let userID = BigInt(userId) + i;
//LVL
function getLvl(userLvl) {
const parse = async () => {
const getHTML = async (url) => {
const { data } = await axios.get(url)
return cheerio.load(data)
}
const $ = await getHTML('https://steamcommunity.com/profiles/' + String(userID));
userLvl = $('span.friendPlayerLevelNum').eq(0).text();
if ((Number(userLvl) === 0)) {
userLvl = true;
} else {
userLvl = false;
}
// console.log(userLvl);
return userLvl;
}
parse();
}
getLvl()
//ONLINE
function getOnline() {
const parse = async () => {
const getHTML = async (url) => {
const { data } = await axios.get(url)
return cheerio.load(data)
}
const $ = await getHTML('https://steamcommunity.com/profiles/' + String(userID));
let userOnline = $('div.profile_in_game_header').eq(0).text();
if ((String(userOnline) === 'Currently Online')) {
userOnline = true;
} else if ((String(userOnline) === 'Currently In-Game')) {
userOnline = true;
} else if ((String(userOnline) === 'In non-Steam game')) {
userOnline = true;
} else {
userOnline = false;
}
// console.log(userOnline);
return userOnline;
}
parse()
}
getOnline()
}
})