Я работаю над утилитой утилизации, где пытаюсь отменить отзывы от glassdoor.com
.
Когда я запускаю этот код в консоли браузера, я получаю ожидаемое значение. Но когда я пытаюсь запустить этот код для оценки страницы через Phantom JS
, я получаю сообщение об ошибке.
Сценарий, который я выполняю здесь
var allReviews = document.querySelectorAll(".empReview");
var totalReviews = document.querySelector(".common__EIReviewSortBarStyles__sortsHeader h2").textContent.match(/\d+/)[0];
var totalPages = Math.ceil(totalReviews / allReviews.length);
return totalPages;
Скрипт Phantom JS, для оценки страницы
totalPages = await ph_page.evaluate(function(totalPagesCode) {
var fn = new Function(totalPagesCode);
return fn();
}, totalPagesCode);
Ошибка
info: TypeError: null is not an object(evaluating 'document.querySelector(".common__EIReviewSortBarStyles__sortsHeader h2").textContent')
info: undefined: 2 in anonymous
info:: 3 in anonymous
info:: 5
Основная проблема в том, что иногда это работает, а иногда нет, я не знаю почему.