示例和用例
🌐 Examples & Use cases
官方示例
🌐 Official examples
Puppeteer 仓库 包含由 Puppeteer 团队维护的少量示例。
按照 README 中的说明运行示例,涵盖从网站创建 PDF、创建屏幕截图或拦截请求等用例。
🌐 Follow the instructions in the README to run the examples, covering use cases like creating PDFs from websites, creating screenshots or intercepting requests.
示例套件
🌐 Example suite
在 Puppeteer 的专用 示例仓库 中找到一组非结构化示例。
🌐 Find a set of unstructured examples in Puppeteer's dedicated example repository.
这个套件是一个示例集合,随着时间的推移不断增长,涵盖了各种用例,例如将事件从你的 Puppeteer 进程转发到浏览器、与元素交互以及运行 CDP 命令。
🌐 This suite is a collection of examples that has been growing over time and covers various use cases like forwarding events from your Puppeteer process to the browser, interacting with elements and running CDP commands.
其他项目、文章和演示
🌐 Other projects, articles and demos
请参阅以下列表,了解渲染、Web 抓取和测试等类别的用例和示例。
🌐 See the following list for use cases and examples from categories like Rendering, Web scraping and Testing.
渲染和网页抓取
🌐 Rendering and web scraping
- Puppetron:演示网站,展示如何使用 Puppeteer 和无头 Chrome 来渲染页面。灵感来自 GoogleChrome/rendertron。
- Thal:开始使用 Puppeteer 和无头 Chrome 进行网页抓取。
- pupperender:Express 中间件,用于检查传入请求的 User-Agent 头,如果匹配可配置的一组机器人,则使用 Puppeteer 渲染页面。适用于 PWA 渲染。
- headless-chrome-crawler:提供操作无头 Chrome 的 API,并允许你抓取动态网站的爬虫。
- 来自 Checkly 的 Puppeteer 示例:用于真实场景的 E2E Puppeteer 示例,例如从网页获取有用信息或常见的登录场景。
- browserless:无头 Chrome 服务,让你可以远程执行 Puppeteer 脚本。
- 在 AWS Lambda 上使用 Puppeteer:使用 Serverless 框架在 AWS Lambda 上运行 Puppeteer
- Apify SDK:用于 JavaScript 的可扩展网页爬取和抓取库。自动管理 Puppeteer 浏览器池,并提供错误处理、任务管理、代理轮换等功能。
测试
🌐 Testing
- angular-puppeteer-demo:演示仓库,说明如何在 Karma 中使用 Puppeteer。
- mocha-headless-chrome:通过无头 Chrome 在命令行中运行客户端 mocha 测试的工具。
- puppeteer-to-istanbul-example: 演示如何以 Istanbul 格式输出 Puppeteer 覆盖率的示例仓库。
- jest-puppeteer:用于设置和运行 Jest 与 Puppeteer 的(几乎)零配置工具。还包括一个用于 Puppeteer 的断言库。
- puppeteer-har:使用 puppeteer 生成 HAR 文件。
- 木偶戏:一个桌面应用,用于在无需编码的情况下构建由 Puppeteer 和 Jest 驱动的测试。
- puppeteer-loadtest:用于对 Puppeteer 脚本执行负载测试的命令行接口。
- cucumber-puppeteer-example:示例仓库,演示如何使用 Puppeeteer 和 Cucumber 进行集成测试。