TypeError:null不是对象-Phantom JS,Node JS

时间:2019-05-05 10:05:52

标签: node.js dom phantomjs

我正在使用一种抓取工具,试图从glassdoor.com中抓取评论。

当我在浏览器控制台中运行此代码时,我得到了预期的值。但是,当我尝试运行此代码来通过Phantom JS评估网页时,会收到错误消息。

我正在执行的脚本here

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

  

主要问题是,有时它可以工作,有时不起作用,我不知道为什么。

0 个答案:

没有答案