Configuration
By default, Puppeteer downloads and uses a specific version of Chrome so its
Debugging
Debugging with Puppeteer can be an arduous task. There is no single method for
Request Interception
Once request interception is enabled, every request will stall unless it's
Headless mode
By default Puppeteer launches the browser in
Screenshots
For capturing screenshots use Page.screenshot().
PDF generation
For printing PDFs use Page.pdf().
Chrome Extensions
Puppeteer can be used for testing Chrome Extensions.
Cookies
Puppeteer offers methods to get, set and delete cookies ahead of time by
Files
Currently, Puppeteer does not offer a way to handle file downloads in a programmatic way.
Running Puppeteer in the browser
Puppeteer is a powerful tool for automating browsers, but did you know its API can also run within a browser itself? This enables you to leverage Puppeteer's capabilities for tasks that don't require Node.js specific features.
Running Puppeteer in Chrome extensions
Chrome extensions environment is significantly different from the usual Node.JS environment, therefore, the support for running Puppeteer in chrome.debugger
Screen configuration
Use --screen-info command line switch to configure headless screen.
Window management
Use Puppeteer's Browser.getWindowBounds andBrowser.setWindowBounds methods to manage browser window position and state.
WebMCP
WebMCP is an experimental API and is subject to change. It is currently only supported in Chrome 149+ and requires specific flags to be enabled.