image.png
推荐看官方文档,因为api变的很多,网上流传的一些教程只能看一部分,还有一部分api已经不能用了
$ npm install -g yarn
参考资料:
npm init
初始化项目set PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=1
即可跳过下载
set PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=1即可跳过下载
命令行输入
$ npm install --save puppeteer
# 或者
$ yarn add puppeteer
存在chromium
test.js
const puppeteer = require('puppeteer');
(async () => {
const browser = await puppeteer.launch({
headless: false, // 不使用无头浏览器,即可以看到真实浏览器打开的操作
defaultViewport: { // 浏览器框的大小
width: 1366,
height: 768
}
});
const page = await browser.newPage(); // 打开一个新的标签页
await page.goto('http://jd.0550.com'); // 访问人才网
await page.screenshot({ // 先截个图保存下来
path: 'job.png'
});
image.png 随后进行相关操作
await page.tap('#username') // 获取用户名input
await page.type('#username', '111') 输入用户名
await page.tap('#password') // 获取密码input
await page.type('#password', 'nodetech2018') // 输入密码
await page.tap('.btn-login') // 点击登录
await timeout(3000) // 等会, 等登录完成
await page.screenshot({ //截图
path: 'job2.png'
});
browser.close(); // 任务完成, 关闭浏览器
})();
let timeout = function (delay) {
return new Promise((resolve, reject) => {
setTimeout(() => {
try {
resolve(1)
} catch (e) {
reject(0)
}
}, delay);
})
}
操作录屏