问题标签 [nightmare]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
917 浏览

javascript - Nightmare-iframe dynamic iframe name

how can I access iframe with random generated name using nightmare-iframe plugin?

I have tried

but this code ends with - TypeError: Cannot read property 'switchToFrame' of undefined

0 投票
2 回答
497 浏览

node.js - 使用 Mocha 测试 NightmareJS 代码失败

最近我开始学习 NodeJS,并且我编写了一个简单的 Youtube 抓取工具,它使用 NightmareJS 并返回每个视频 URL 的点赞数、观看次数、作者和标题名称。

现在我正在尝试使用 Mocha 对我的代码进行单元测试(练习一些单元测试),但由于某种原因它失败并出现以下错误:

错误:超过 2000 毫秒的超时。确保在此测试中调用了 done() 回调。

我试图增加超时(最多 15 秒),但它没有帮助,我猜它挂在某个地方。我错过了什么?我也很高兴听到一些关于代码结构和实现的建设性批评。

这是我的代码:

0 投票
1 回答
2930 浏览

javascript - 摩卡的噩梦:未捕获的类型错误:无法读取未定义的属性“应用”

我正在尝试使用 Nightmare.js 和 Mocha 运行示例测试,但我不断收到上述错误。这是完整的输出:

这是我正在运行的代码:

这个要点

我在 Oracle VM VirtualBox 上运行 Ubuntu 16.04 LTS。

0 投票
1 回答
492 浏览

javascript - 尝试使用 nightmarejs 将抓取的数据保存到对象中,出现错误

我想将该数据保存到一个 json 文件中,但首先我想将标题、发布日期、评级和评论保存到 movieData 对象,但它给了我错误:movieData 未定义。

0 投票
2 回答
1227 浏览

javascript - Nightmare JS 返回页面状态码

我想使用 Nightmare JS 通过检查状态码 200 来确定页面是否正在加载。我查看了 goto 选项,但无法弄清楚。有人有想法么?

0 投票
1 回答
2840 浏览

javascript - 如何在 Nightmare.js 中设置电子大小?

Nightmare文档没有指定如何设置浏览器详细信息。

我猜它是这样的,但它不起作用。有任何想法吗?

0 投票
1 回答
458 浏览

javascript - 如何根据噩梦中的条件做某事?

我正在使用创建脚本Nightmare,我的脚本必需的步骤是:

  1. 打开页面

  2. 使用 cookie 记录检查

  3. 登录未记录

  4. 完成所有剩下的任务

像这样的代码:

在执行其余必要任务之前,如果未登录,我该如何进行噩梦登录?

0 投票
1 回答
1575 浏览

javascript - 使用 Nightmare 在页面之间移动和抓取

有一个网站包含一个包含 25 个条目列表的页面,其中每个条目都是指向包含我需要的一些信息的页面的链接。我想进入列表页面,然后:1)单击第一个条目的链接 2)检索所有 html 3)单击返回列表页面(有一个按钮) 4)重复每个其他列表

我也想尽可能高效地做到这一点,我被告知这意味着利用承诺。这是我的代码草图,它不起作用:

这一直到列表页面,然后不再继续。我也尝试了相同的代码,但return nightmare每次使用nightmare除了第一个。我看过一些使用 的例子return,但是当我这样做时,代码抛出了一个错误。

我还尝试不包括第三个nightmare(空格后面的那个),而是尝试通过直接转到 来继续旧的噩梦实例.click(),但这也引发了错误。

我显然需要一些关于噩梦的语法和语义方面的帮助,但是除了 API 列表之外,在线文档并不多。有谁知道我怎样才能使这项工作?

0 投票
1 回答
687 浏览

javascript - NightmareJS - 网络爬虫需要遍历 JSON 数据

我正在构建一个涵盖 200 多个站点的网络爬虫。我当前的代码运行在一个由十几个站点构建的外部 JSON 文件之上。样本:

当我尝试async .each 时,它会在函数顶部记录所有原始对象,然后再尝试进入噩梦实例然后返回error Nothing responds to "goto"。然后我尝试了async .eachSeries,它打印出正确的结果,但在第一次迭代后停止。

我怎样才能完成这项工作而不必为每个文件编写单独的文件?或者有没有更好的方法来抓取这么多网站?

源代码

0 投票
2 回答
4404 浏览

javascript - Nightmarejs .click() 在每个元素上都有延迟

我正在尝试使用 Nightmarejs 制作简单的跟随脚本。它应该以下列方式工作:

  1. 转到一些用户个人资料
  2. 单击按钮以打开该用户的关注者列表
  3. 单击所有跟随按钮,每次单击之间有延迟
  4. 点击加载更多
  5. 重复步骤 3. 和 4.几次

到目前为止我所拥有的是这个,它可以正常工作,但它只点击第一个跟随按钮,这就是结束:

我试图循环点击像这样的关注按钮,但它给了我错误$ 未定义

我相信对于在 Nightmarejs 方面有经验的人来说,这将是一项简单的任务,但我刚刚开始使用它,现在已经挣扎了 2 天。

我真的很感激任何帮助。