Ошибка типа: ноль не является объектом - Phantom JS, Node JS - PullRequest
0 голосов
/ 05 мая 2019

Я работаю над утилитой утилизации, где пытаюсь отменить отзывы от 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

Основная проблема в том, что иногда это работает, а иногда нет, я не знаю почему.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...