前置知识
在使用 @pushrocks/smartpuppeteer 这个 npm 包之前,需要掌握以下知识:
- Node.js 环境
- Puppeteer 库
什么是 @pushrocks/smartpuppeteer
@pushrocks/smartpuppeteer 是一款基于 Puppeteer 库封装的工具库。它提供了一些便捷的方法,使得我们可以更轻松地使用 Puppeteer 库进行自动化测试、爬虫、数据抓取等任务。
@pushrocks/smartpuppeteer 的主要特点包括:
- 自动管理 Chromium 浏览器进程,无需手动维护
- 提供了一些通用的爬虫操作,如点击、填写表单、截图等
- 提供了一些自定义的可配置参数,如 UA、代理等
安装和使用
安装 @pushrocks/smartpuppeteer 可以通过 npm 包管理工具来完成:
npm install -S @pushrocks/smartpuppeteer
然后在代码中引入它:
const smartPuppeteer = require('@pushrocks/smartpuppeteer');
基本用法
创建浏览器实例并打开 URL
smartPuppeteer.launch('https://www.baidu.com').then(async (pagePlus) => { const currentPage = pagePlus.page; // 当前页面对象 console.log(await currentPage.title()); // 打印页面标题 await smartPuppeteer.delay(2000); // 等待 2s await pagePlus.close(); // 关闭页面和浏览器 }).catch((err) => { console.log(err); });
配置参数
可以通过传入一个对象来配置参数,支持的参数如下:
-- -------------------- ---- ------- ----------------------- -- --------- --------- ----- -- --------- ------------- ------- - ------------ --------- -- ---------- ---------- --- -- ------ --------- ------ -- ---- ------ --- -- -- -- ----------------- ----- -- ------------------- ---------------- ------ -- --- -------- --------- - ------ ----- ------- ---- ------------------ - -- -- ---- --------- ---------- ----- ---
点击元素
await smartPuppeteer.clickElement(pagePlus, '.btn-login');
填写表单
await smartPuppeteer.fillInput(pagePlus, '#username', 'admin'); await smartPuppeteer.fillInput(pagePlus, '#password', '123456');
截图
await smartPuppeteer.takeScreenshot(pagePlus, 'myScreenShot.png');
总结
@pushrocks/smartpuppeteer 是一款很不错的自动化测试、爬虫工具,它通过封装 Puppeteer 库的一些方法,提供了更便捷的操作。
使用 @pushrocks/smartpuppeteer 可以使我们更加快速地完成一些自动化测试和爬虫任务,提高工作效率。如果你正在进行这方面的工作,那么这个库很值得你一试。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/5f3a66b6dbf7be33b256701b