What is @puppeteer/browsers?
@puppeteer/browsers is a package that provides tools for managing browser binaries for Puppeteer. It allows you to download, install, and manage different versions of browsers like Chrome and Firefox, which can be used with Puppeteer for web scraping, automated testing, and other browser automation tasks.
What are @puppeteer/browsers's main functionalities?
Download a specific browser version
This feature allows you to download a specific version of a browser. In this example, it downloads Chrome version 91.0.4472.124.
const { downloadBrowser } = require('@puppeteer/browsers');
(async () => {
await downloadBrowser('chrome', '91.0.4472.124');
})();
List available browser versions
This feature lists all available versions of a specified browser. In this example, it lists all available versions of Chrome.
const { listBrowserVersions } = require('@puppeteer/browsers');
(async () => {
const versions = await listBrowserVersions('chrome');
console.log(versions);
})();
Install a browser
This feature installs a specified version of a browser. In this example, it installs Firefox version 89.0.
const { installBrowser } = require('@puppeteer/browsers');
(async () => {
await installBrowser('firefox', '89.0');
})();
Other packages similar to @puppeteer/browsers
puppeteer
Puppeteer is a Node library which provides a high-level API to control Chrome or Chromium over the DevTools Protocol. While @puppeteer/browsers focuses on managing browser binaries, Puppeteer itself is used for browser automation tasks such as web scraping and automated testing.
playwright
Playwright is a Node library to automate Chromium, Firefox, and WebKit with a single API. It provides similar functionalities to Puppeteer but supports more browsers. Playwright also includes tools for managing browser binaries, making it a comprehensive alternative to @puppeteer/browsers.
selenium-webdriver
Selenium WebDriver is a tool for automating web application testing, and it supports multiple browsers. Selenium WebDriver can manage browser binaries through WebDriverManager, which provides similar functionalities to @puppeteer/browsers.
@puppeteer/browsers
Manage and launch browsers/drivers from a CLI or programmatically.
CLI
Use npx
to run the CLI:
npx @puppeteer/browsers --help
CLI help will provide all documentation you need to use the CLI.
npx @puppeteer/browsers --help
npx @puppeteer/browsers install --help
npx @puppeteer/browsers launch --help
Known limitations
- We support installing and running Firefox, Chrome and Chromium. The
latest
, beta
, dev
, canary
, stable
keywords are only supported for the install command. For the launch
command you need to specify an exact build ID. The build ID is provided by the install
command (see npx @puppeteer/browsers install --help
for the format). - Launching the system browsers is only possible for Chrome/Chromium.
API
The programmatic API allows installing and launching browsers from your code. See the test
folder for examples on how to use the install
, canInstall
, launch
, computeExecutablePath
, computeSystemExecutablePath
and other methods.