docs: add intro docs for java (#5563)
This commit is contained in:
parent
0ad2aceb2d
commit
4f9b7d5ad6
83
docs/src/installation-java.md
Normal file
83
docs/src/installation-java.md
Normal file
|
|
@ -0,0 +1,83 @@
|
||||||
|
---
|
||||||
|
id: installation
|
||||||
|
title: "Installation"
|
||||||
|
---
|
||||||
|
|
||||||
|
<!-- TOC -->
|
||||||
|
|
||||||
|
## 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-playwright` on Windows
|
||||||
|
- `~/Library/Caches/ms-playwright` on MacOS
|
||||||
|
- `~/.cache/ms-playwright` on Linux
|
||||||
|
|
||||||
|
Every time `Playwright.create()` is called it will check if the browsers are in the local cache and if not download them.
|
||||||
|
|
||||||
|
These browsers will take few hundreds of megabytes of the disk space when installed:
|
||||||
|
|
||||||
|
```sh
|
||||||
|
$ du -hs ./Library/Caches/ms-playwright/*
|
||||||
|
281M chromium-XXXXXX
|
||||||
|
187M firefox-XXXX
|
||||||
|
180M webkit-XXXX
|
||||||
|
```
|
||||||
|
|
||||||
|
You can override default behavior using environment variables. When running Playwright scripts, ask it to search for browsers in a shared location:
|
||||||
|
|
||||||
|
```sh
|
||||||
|
# Linux/macOS
|
||||||
|
$ PLAYWRIGHT_BROWSERS_PATH=$HOME/pw-browsers mvn test
|
||||||
|
|
||||||
|
# Windows
|
||||||
|
$ set PLAYWRIGHT_BROWSERS_PATH=%USERPROFILE%\pw-browsers
|
||||||
|
$ mvn test
|
||||||
|
```
|
||||||
|
|
||||||
|
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-browsers` in 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.
|
||||||
|
|
||||||
|
```sh
|
||||||
|
# Linux/macOS
|
||||||
|
$ PLAYWRIGHT_DOWNLOAD_HOST=192.168.1.78 mvn test
|
||||||
|
|
||||||
|
# Windows
|
||||||
|
$ set PLAYWRIGHT_DOWNLOAD_HOST=192.168.1.78
|
||||||
|
$ mvn test
|
||||||
|
```
|
||||||
|
|
||||||
|
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`.
|
||||||
|
|
||||||
|
```sh
|
||||||
|
# Linux/macOS
|
||||||
|
$ PLAYWRIGHT_FIREFOX_DOWNLOAD_HOST=192.168.1.1 PLAYWRIGHT_DOWNLOAD_HOST=192.168.1.78 mvn test
|
||||||
|
```
|
||||||
|
|
||||||
|
## 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.
|
||||||
|
|
||||||
|
```sh
|
||||||
|
# Linux/macOS
|
||||||
|
$ PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD=1 mvn test
|
||||||
|
|
||||||
|
# Windows
|
||||||
|
$ set PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD=1
|
||||||
|
$ mvn test
|
||||||
|
```
|
||||||
79
docs/src/intro-java.md
Normal file
79
docs/src/intro-java.md
Normal file
|
|
@ -0,0 +1,79 @@
|
||||||
|
---
|
||||||
|
id: intro
|
||||||
|
title: "Getting Started"
|
||||||
|
---
|
||||||
|
|
||||||
|
<!-- TOC -->
|
||||||
|
- [Release notes](./release-notes.md)
|
||||||
|
|
||||||
|
## Installation
|
||||||
|
|
||||||
|
Playwright is distributed as a set of [Maven](https://maven.apache.org/what-is-maven.html) modules. The easiest way to use it is to add one dependency to your project's `pom.xml` as described below. If you're not familiar with Maven please refer to its [documentation](https://maven.apache.org/guides/getting-started/maven-in-five-minutes.html).
|
||||||
|
|
||||||
|
```xml
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.microsoft.playwright</groupId>
|
||||||
|
<artifactId>playwright</artifactId>
|
||||||
|
<version>0.180.0</version>
|
||||||
|
</dependency>
|
||||||
|
```
|
||||||
|
|
||||||
|
These commands download the Playwright package and install browser binaries for Chromium, Firefox and WebKit. To modify this behavior see [installation parameters](./installation.md).
|
||||||
|
|
||||||
|
## Usage
|
||||||
|
|
||||||
|
Once installed, you can `import` Playwright in a Java file, and launch any of the 3 browsers (`chromium`, `firefox` and `webkit`).
|
||||||
|
|
||||||
|
```java
|
||||||
|
import com.microsoft.playwright.*;
|
||||||
|
|
||||||
|
public class Example {
|
||||||
|
public static void main(String[] args) {
|
||||||
|
try (Playwright playwright = Playwright.create()) {
|
||||||
|
Browser browser = playwright.chromium().launch();
|
||||||
|
Page page = browser.newPage();
|
||||||
|
page.navigate("http://playwright.dev");
|
||||||
|
System.out.println(page.title());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
## First script
|
||||||
|
|
||||||
|
In our first script, we will navigate to `whatsmyuseragent.org` and take a screenshot in WebKit.
|
||||||
|
|
||||||
|
```java
|
||||||
|
import com.microsoft.playwright.*;
|
||||||
|
import java.nio.file.Paths;
|
||||||
|
|
||||||
|
public class WebKitScreenshot {
|
||||||
|
public static void main(String[] args) {
|
||||||
|
try (Playwright playwright = Playwright.create()) {
|
||||||
|
Browser browser = playwright.webkit().launch();
|
||||||
|
Page page = browser.newPage();
|
||||||
|
page.navigate("http://whatsmyuseragent.org/");
|
||||||
|
page.screenshot(new Page.ScreenshotOptions().withPath(Paths.get("example.png")));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
By default, Playwright runs the browsers in headless mode. To see the browser UI, pass the `headless=false` flag while launching the browser. You can also use [`option: slowMo`] to slow down execution. Learn more in the debugging tools [section](./debug.md).
|
||||||
|
|
||||||
|
```java
|
||||||
|
playwright.firefox().launch(new BrowserType.LaunchOptions().withHeadless(false).withSlowMo(50));
|
||||||
|
```
|
||||||
|
|
||||||
|
## System requirements
|
||||||
|
|
||||||
|
Playwright requires **Java 8** or newer. The browser binaries for Chromium,
|
||||||
|
Firefox and WebKit work across the 3 platforms (Windows, macOS, Linux):
|
||||||
|
|
||||||
|
* **Windows**: Works with Windows and Windows Subsystem for Linux (WSL).
|
||||||
|
* **macOS**: Requires 10.14 or above.
|
||||||
|
* **Linux**: Depending on your Linux distribution, you might need to install additional
|
||||||
|
dependencies to run the browsers.
|
||||||
|
* Firefox requires Ubuntu 18.04+
|
||||||
|
* For Ubuntu 18.04, the additional dependencies are defined in [our Docker image](https://github.com/microsoft/playwright/blob/master/utils/docker/Dockerfile.bionic),
|
||||||
|
which is based on Ubuntu.
|
||||||
Loading…
Reference in a new issue