Advanced installation
- Managing browser binaries
- Download from artifact repository
- Skip browser downloads
- Download single browser binary
Managing browser binaries#
Each version of Playwright needs specific versions of browser binaries to operate. By default Playwright downloads Chromium, WebKit and Firefox browsers into the OS-specific cache folders:
%USERPROFILE%\AppData\Local\ms-playwrighton Windows~/Library/Caches/ms-playwrighton MacOS~/.cache/ms-playwrighton Linux
These browsers will take few hundreds of megabytes of the disk space when installed:
You can override default behavior using environment variables. When installing Playwright, ask it to download browsers into a specific location:
When running Playwright scripts, ask it to search for browsers in a shared location:
Or you can opt into the hermetic install and place binaries under the node_modules/ folder:
Playwright keeps track of packages that need those browsers and will garbage collect them as you update Playwright to the newer versions.
NOTE Developers can opt-in in this mode via exporting
PLAYWRIGHT_BROWSERS_PATH=$HOME/pw-browsersin their.bashrc.
Download from artifact repository#
By default, Playwright downloads browsers from Microsoft and Google public CDNs.
Sometimes companies maintain an internal artifact repository to host browser
binaries. In this case, Playwright can be configured to download from a custom
location using the PLAYWRIGHT_DOWNLOAD_HOST env variable.
It is also possible to use a per-browser download hosts using PLAYWRIGHT_CHROMIUM_DOWNLOAD_HOST, PLAYWRIGHT_FIREFOX_DOWNLOAD_HOST and PLAYWRIGHT_WEBKIT_DOWNLOAD_HOST env variables that
take precedence over PLAYWRIGHT_DOWNLOAD_HOST.
Skip browser downloads#
In certain cases, it is desired to avoid browser downloads altogether because browser binaries are managed separately.
This can be done by setting PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD variable before installation.
Download single browser binary#
Playwright ships three packages that bundle only a single browser:
NOTE All configuration environment variables also apply to these packages.
Using these packages is as easy as using a regular Playwright:
Install a specific package
Require package