📅  最后修改于: 2023-12-03 15:03:53.371000             🧑  作者: Mango
Puppeteer是一个基于Chrome浏览器的Node.js库,用于控制Chrome的无头模式下的DevTools协议。它的主要功能是自动化Chrome浏览器操作,如生成截屏、模拟用户行为、填充表单等等。本文将对Puppeteer进行介绍与实例演示。
通过npm安装Puppeteer:
npm i puppeteer
使用Puppeteer启动Chrome浏览器需要使用puppeteer.launch()
方法,该方法返回一个Promise,其中包含一个Browser实例。
const puppeteer = require('puppeteer');
(async () => {
const browser = await puppeteer.launch();
const page = await browser.newPage();
// 在空白页面中输入网址
await page.goto('https://example.com');
await browser.close();
})();
使用page.type()
方法可以在表单元素中输入文字。
// 找到对应的表单元素
const inputEle = await page.$('input[type="text"]');
// 在表单元素中输入文字
await inputEle.type('puppeteer');
使用page.click()
方法可以点击页面上的按钮。
// 找到提交按钮
const buttonEle = await page.$('input[type="submit"]');
// 点击提交按钮
await buttonEle.click();
使用page.screenshot()
方法可以生成当前页面的截屏。
// 生成截屏
await page.screenshot({ path: 'example.png' });
通过以上示例可以看出,Puppeteer是一个非常强大的自动化工具,可以轻松应对各种复杂的操作场景,无论是模拟用户操作,还是生成报告,都可以方便地实现。