测试及爬虫工具nightmare

  目录

nightmare工具的使用

测试及爬虫工具nightmare

nightmare是一个可视化的页面操作工具,官网点这里
如何安装就不说了,npm就可以搞定,但是,安装的时候会很慢,因为它依赖electron
具体的使用方法可以直接看官网的api,下面是一个小demo,是对本博客网站的简单操作,可以看一下它强大的效果

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
var Nightmare = require('nightmare');       
var nightmare = Nightmare({
show: true,
gotoTimeout: 100000 // goto页面的等待时长,不写的话默认30000ms,访问慢的网页会报错
});

nightmare
.goto('https://jinux7.github.io') // 打开的网页
.type('.m_search .u-search-input', 'javascript') // 向input中写入javascript
.type('.m_search .u-search-input', '\u000d') // 触发input的点击回车事件
.wait('.icon.icon-close') // 等待弹出层的.icon.icon-close元素节点出现
.click('.icon.icon-close') // 出现后点击它
.evaluate(function () { // 注入到页面里执行的js代码
// do something
return document.querySelector('.avatar.waves-image').src;
})
// .end() // 关闭nightmare
.then(function (result) {
console.log(result);
})
.catch(function (error) {
console.error('Search failed:', error);
});

如需要更丰富的功能,按照api一点点添加就可以喽.