梦魇挂在goto()上

时间:2017-04-26 21:54:13

标签: node.js headless-browser nightmare

我最近和NightmareJS一起工作,现在我遇到了问题。好像每当我尝试使用Nightmare加载页面并等待选择器存在时,它就会挂起goto调用。我有以下代码,打印到控制台的唯一内容是“加载”。

nm = new Nightmare({show: false});

console.log("loading");

nm.goto("https://www.google.com")

.then(() => {
  return nm.wait(".gbqfba")
  .then(() => {
    console.log("search bar loaded, showing browser");
    nm.show();
  })
  .catch((err) => {
    console.log(err.toString());
  })
})
.catch(error => console.log('An error occurred:', error));

(类'gbqfba'是我等待的搜索栏的隐藏部分,因此我知道栏已加载)

1 个答案:

答案 0 :(得分:0)

nightmare.show()不再是一个函数,你需要在初始化期间设置它。要查看噩梦的渲染器窗口,你需要传递

<script src="//repl.it/embed/HzBl/24.js"></script>

此外,您可以打开开发人员工具,以便手动检查document.querySelector(“。gbqfba”);正在努力。

var nightmare = Nightmare({ show: true });