Examples

Before you run these examples, checkout of the Puppeteer repository and install the dependencies:

npm i
# You can also use yarn.

Run the examples

The examples can be run from the root folder:

NODE_PATH=../ node examples/search.js

Larger examples

More complex and use case driven examples can be found at github.com/GoogleChromeLabs/puppeteer-examples.

Other useful tools, articles, and projects that use Puppeteer

Rendering and web scraping

  • Puppetron: Demo site that shows how to use Puppeteer and Headless Chrome to render pages. Inspired by GoogleChrome/rendertron.
  • Thal: Get started with Puppeteer and Chrome Headless for Web Scraping.
  • pupperender: Express middleware that checks the User-Agent header of incoming requests, and if it matches one of a configurable set of bots, render the page using Puppeteer. Useful for PWA rendering.
  • headless-chrome-crawler: Crawler that provides APIs to manipulate Headless Chrome and lets you crawl dynamic websites.
  • puppeteer-examples: Puppeteer Headless Chrome examples for real life use cases, such as getting useful info from the web pages or common login scenarios.
  • browserless: Headless Chrome as a service letting you execute Puppeteer scripts remotely. Provides a Docker image with configuration for concurrency, launch arguments and more.
  • Puppeteer on AWS Lambda: Run puppeteer on AWS Lambda with Serverless framework
  • Apify SDK: The scalable web crawling and scraping library for JavaScript. Automatically manages a pool of Puppeteer browsers and provides error handling, task management, proxy rotation and more.

Testing

  • angular-puppeteer-demo: Demo repository explaining how to use Puppeteer in Karma.
  • mocha-headless-chrome: Tool which runs client-side mocha tests in the command line through headless Chrome.
  • puppeteer-to-istanbul-example: Demo repository demonstrating how to output Puppeteer coverage in Istanbul format.
  • jest-puppeteer: (almost) Zero configuration tool for setting up and running Jest and Puppeteer. Also includes an assertion library for Puppeteer.
  • puppeteer-har: Generate HAR file with puppeteer.
  • puppetry: A desktop app to build Puppeteer and Jest driven tests without coding.
  • puppeteer-loadtest: command line interface for performing load test on Puppeteer scripts.
  • cucumber-puppeteer-example: Example repository demonstrating how to use Puppeeteer and Cucumber for integration testing.

Services

  • Checkly: Monitoring SaaS that uses Puppeteer to check availability and correctness of web pages and apps.