Показать сообщение отдельно
  #3 (permalink)  
Старый 05.12.2021, 20:03
Новичок на форуме
Отправить личное сообщение для Gleb Suprun Посмотреть профиль Найти все сообщения от Gleb Suprun
 
Регистрация: 05.12.2021
Сообщений: 4

Да, я хочу использовать в цикле эти функции и понимаю о чем вы, но для начала мне нужно получать значение с этих функций, когда я прописываю
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()
	}
})
Ответить с цитированием