@sidorikv

Почему скрипт работает не правильно?

Вот мой скрипт:

async function monitoringItem() {
    let stock_status = 'http://schema.org/OutOfStock';

    while (stock_status == 'http://schema.org/OutOfStock') {
        await sleep(250)
        let response = await fetch('https://some-site.ru/');
        let response_status = response.status
        if (response_status == 200) {
            let content = await response.text();
            stock_status = content.match(/(?<="availability":").+?(?<=")/gm);
            if (stock_status != 'null') {
                stock_status = stock_status[0];
                stock_status = stock_status.replace('"','');
                console.log("Нету" + " | " + response_status + " | " + stock_status);
            } else {
                console.log("Не удалось получить статус" + " | " + response_status + " | " + stock_status)
            }
        } else {
            console.log("Не удалось получить статус" + " | " + response_status + " | " + stock_status)
        }
    };

    console.log("Есть " + stock_status)
};


Суть проста. Мониторить сайт на наличие товара до тех пор, пока ссылка не станет другой, после выходить из цикла и выдавать лог в консоль:

console.log("Есть " + stock_status)

Но почему то, он вместо того чтобы гонять цикл один раз его прокручивает, после выдает лог что товар есть ( хотя его нет ) и все. Я посмотрел, мб он и вправду появился в этот момент, но ссылка одинакова. Пожалуйста, помогите мне. Я не вижу здесь ошибки
  • Вопрос задан
  • 100 просмотров
Пригласить эксперта
Ответы на вопрос 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Ошибка первая - разбирать JSON регуляркой.
Ошибка вторая - считать, что 'null' и null это одно и то же.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы