メインコンテンツにスキップ

Browser

BrowserType.launch() を介してブラウザが作成されます。Browser を使用して Page を作成する例

import com.microsoft.playwright.*;

public class Example {
public static void main(String[] args) {
try (Playwright playwright = Playwright.create()) {
BrowserType firefox = playwright.firefox();
Browser browser = firefox.launch();
Page page = browser.newPage();
page.navigate("https://example.com");
browser.close();
}
}
}

メソッド

browserType

追加日: v1.23 browser.browserType

ブラウザが属するブラウザの種類(chromium、firefox、webkit)を取得します。

使用法

Browser.browserType();

戻り値


close

v1.9より前に追加 browser.close

このブラウザが BrowserType.launch() を使用して取得された場合、ブラウザとそのすべてのページ (開かれている場合) を閉じます。

このブラウザに接続されている場合、このブラウザに属する作成されたすべてのコンテキストをクリアし、ブラウザサーバーから切断します。

これは、ブラウザを強制終了するのと似ています。ページを正常に閉じ、ページクローズイベントを確実に受信するには、Browser.close() を呼び出すに、Browser.newContext() を使用して明示的に作成した BrowserContext インスタンスで BrowserContext.close() を呼び出します。

Browser オブジェクト自体は破棄されたと見なされ、これ以上使用できません。

使用法

Browser.close();
Browser.close(options);

引数

  • options Browser.CloseOptions (任意)
    • setReason String (オプション)追加されたバージョン: v1.40#

      ブラウザの閉鎖によって中断された操作に報告される理由。

戻り値


contexts

v1.9より前に追加 browser.contexts

すべての開いているブラウザコンテキストの配列を返します。新しく作成されたブラウザでは、ゼロ個のブラウザコンテキストを返します。

使用法

Browser browser = pw.webkit().launch();
System.out.println(browser.contexts().size()); // prints "0"
BrowserContext context = browser.newContext();
System.out.println(browser.contexts().size()); // prints "1"

戻り値


isConnected

v1.9より前に追加 browser.isConnected

ブラウザが接続されていることを示します。

使用法

Browser.isConnected();

戻り値


newBrowserCDPSession

追加されたバージョン: v1.11 browser.newBrowserCDPSession

CDPセッションはChromiumベースのブラウザでのみサポートされています。

新しく作成されたブラウザセッションを返します。

使用法

Browser.newBrowserCDPSession();

戻り値


newContext

v1.9より前に追加 browser.newContext

新しいブラウザコンテキストを作成します。他のブラウザコンテキストとクッキー/キャッシュを共有しません。

このメソッドを直接使用して BrowserContext を作成する場合、コードが BrowserContext の使用を終了した後、および Browser.close() を呼び出す前に、返されたコンテキストを BrowserContext.close() を介して明示的に閉じるのが最善の方法です。これにより、context が正常に閉じられ、HAR やビデオなどのアーティファクトが完全にフラッシュされて保存されます。

使用法

Browser browser = playwright.firefox().launch();  // Or 'chromium' or 'webkit'.
// Create a new incognito browser context.
BrowserContext context = browser.newContext();
// Create a new page in a pristine context.
Page page = context.newPage();
page.navigate("https://example.com");

// Graceful close up everything
context.close();
browser.close();

引数

  • options Browser.NewContextOptions (任意)
    • setAcceptDownloads boolean (任意)#

      すべての添付ファイルを自動的にダウンロードするかどうか。デフォルトはtrueで、すべてのダウンロードが受け入れられます。

    • setBaseURL String (任意)#

      Page.navigate()Page.route()Page.waitForURL()Page.waitForRequest()、または Page.waitForResponse() を使用する場合、対応する URL を構築するために URL() コンストラクタを使用することにより、ベース URL を考慮します。デフォルトでは未設定です。例

      • baseURL: https://:3000/bar.htmlにナビゲートすると、https://:3000/bar.htmlになります。
      • baseURL: https://:3000/foo/./bar.htmlにナビゲートすると、https://:3000/foo/bar.htmlになります。
      • baseURL: https://:3000/foo(末尾にスラッシュなし)で./bar.htmlにナビゲートすると、https://:3000/bar.htmlになります。
    • setBypassCSP boolean (任意)#

      ページのコンテンツセキュリティポリシーをバイパスするかどうかを切り替えます。デフォルトはfalseです。

    • setClientCertificates List<ClientCertificates> (任意)追加されたバージョン: 1.46#

      • setOrigin String

        証明書が有効な正確なオリジン。オリジンにはhttpsプロトコル、ホスト名、オプションでポートが含まれます。

      • setCertPath Path (任意)

        PEM形式の証明書ファイルへのパス。

      • setCert byte[] (任意)

        PEM形式の証明書の直接値。

      • setKeyPath Path (任意)

        PEM形式の秘密鍵ファイルへのパス。

      • setKey byte[] (任意)

        PEM形式の秘密鍵の直接値。

      • setPfxPath Path (任意)

        PFXまたはPKCS12形式でエンコードされた秘密鍵と証明書チェーンへのパス。

      • setPfx byte[] (任意)

        PFXまたはPKCS12形式でエンコードされた秘密鍵と証明書チェーンの直接値。

      • setPassphrase String (任意)

        秘密鍵(PEMまたはPFX)のパスフレーズ。

      TLSクライアント認証により、サーバーはクライアント証明書を要求し、それを検証できます。

      詳細

      使用するクライアント証明書の配列。各証明書オブジェクトは、certPathkeyPathの両方、単一のpfxPath、またはそれらに対応する直接値(certkey、またはpfx)のいずれかを持っている必要があります。オプションで、証明書が暗号化されている場合はpassphraseプロパティを提供する必要があります。originプロパティは、証明書が有効なリクエストオリジンと正確に一致するように提供する必要があります。

      クライアント証明書認証は、少なくとも1つのクライアント証明書が提供された場合にのみ有効になります。サーバーから送信されたすべてのクライアント証明書を拒否したい場合は、訪問する予定のドメインのいずれとも一致しないoriginを持つクライアント証明書を提供する必要があります。

      macOSでWebKitを使用している場合、localhostにアクセスしてもクライアント証明書は取得されません。localhostlocal.playwrightに置き換えることで機能させることができます。

    • setColorScheme null | enum ColorScheme { LIGHT, DARK, NO_PREFERENCE } (任意)#

      prefers-colors-scheme メディア機能をエミュレートします。サポートされている値は 'light''dark' です。詳細については Page.emulateMedia() を参照してください。null を渡すと、エミュレーションがシステムのデフォルトにリセットされます。デフォルトは 'light' です。

    • setContrast null | enum Contrast { NO_PREFERENCE, MORE } (任意)#

      'prefers-contrast' メディア機能をエミュレートします。サポートされている値は 'no-preference''more' です。詳細については Page.emulateMedia() を参照してください。null を渡すと、エミュレーションがシステムのデフォルトにリセットされます。デフォルトは 'no-preference' です。

    • setDeviceScaleFactor double (任意)#

      デバイススケールファクター (dpr と考えることができます) を指定します。デフォルトは 1 です。デバイススケールファクターによるデバイスのエミュレーションの詳細はこちら。

    • setExtraHTTPHeaders Map<String, String> (任意)#

      すべてのリクエストと一緒に送信される追加のHTTPヘッダーを含むオブジェクト。デフォルトはなし。

    • setForcedColors null | enum ForcedColors { ACTIVE, NONE } (任意)#

      'forced-colors' メディア機能をエミュレートします。サポートされている値は 'active''none' です。詳細については Page.emulateMedia() を参照してください。null を渡すと、エミュレーションがシステムのデフォルトにリセットされます。デフォルトは 'none' です。

    • setGeolocation Geolocation (任意)#

      • setLatitude double

        -90から90の間の緯度。

      • setLongitude double

        -180から180の間の経度。

      • setAccuracy double (任意)

        非負の精度値。デフォルトは0です。

    • setHasTouch boolean (任意)#

      ビューポートがタッチイベントをサポートするかどうかを指定します。デフォルトは false です。モバイルエミュレーションの詳細はこちら。

    • setHttpCredentials HttpCredentials (任意)#

      • setUsername String

      • setPassword String

      • setOrigin String (任意)

        特定のオリジン(scheme://host:port)でのhttp資格情報の送信を制限します:ポート).

      • setSend enum HttpCredentialsSend { UNAUTHORIZED, ALWAYS } (任意)

        このオプションは、対応する APIRequestContext から送信されるリクエストにのみ適用され、ブラウザから送信されるリクエストには影響しません。'always' - 基本認証資格情報を含む Authorization ヘッダーが各APIリクエストとともに送信されます。'unauthorized' - 資格情報は WWW-Authenticate ヘッダーを含む401 (Unauthorized) レスポンスが受信された場合にのみ送信されます。デフォルトは 'unauthorized' です。

      HTTP認証用の資格情報。オリジンが指定されていない場合、ユーザー名とパスワードは、不正な応答があった場合にすべてのサーバーに送信されます。

    • setIgnoreHTTPSErrors boolean (任意)#

      ネットワークリクエストを送信する際にHTTPSエラーを無視するかどうか。デフォルトはfalseです。

    • setIsMobile boolean (任意)#

      meta viewport タグが考慮され、タッチイベントが有効になるかどうか。isMobile はデバイスの一部であるため、手動で設定する必要はありません。デフォルトは false で、Firefox ではサポートされていません。モバイルエミュレーションの詳細はこちら。

    • setJavaScriptEnabled boolean (任意)#

      コンテキストで JavaScript を有効にするかどうか。デフォルトは true です。JavaScript の無効化の詳細はこちら。

    • setLocale String (任意)#

      ユーザーロケールを指定します (例: en-GBde-DE など)。ロケールは、navigator.language の値、Accept-Language リクエストヘッダーの値、および数値と日付の書式設定規則に影響を与えます。デフォルトはシステムのデフォルトロケールです。エミュレーションガイドでエミュレーションの詳細をご覧ください。

    • setOffline boolean (任意)#

      ネットワークがオフラインであることをエミュレートするかどうか。デフォルトは false です。ネットワークエミュレーションの詳細はこちら。

    • setPermissions List<String> (任意)#

      このコンテキスト内のすべてのページに付与する権限のリスト。詳細については BrowserContext.grantPermissions() を参照してください。デフォルトはなし。

    • setProxy Proxy (任意)#

      • setServer String

        すべてのリクエストに使用するプロキシ。HTTPおよびSOCKSプロキシがサポートされており、例としてhttp://myproxy.com:3128またはsocks5://myproxy.com:3128があります。短縮形myproxy.com:3128はHTTPプロキシと見なされます。

      • setBypass String (任意)

        プロキシをバイパスするオプションのカンマ区切りドメイン。例: ".com, chromium.org, .domain.com"

      • setUsername String (任意)

        HTTPプロキシが認証を必要とする場合に使用するオプションのユーザー名。

      • setPassword String (任意)

        HTTPプロキシが認証を必要とする場合に使用するオプションのパスワード。

      このコンテキストで使用するネットワークプロキシ設定。デフォルトはなしです。

    • setRecordHarContent enum HarContentPolicy { OMIT, EMBED, ATTACH } (任意)#

      リソースコンテンツ管理を制御するオプション設定。omit が指定された場合、コンテンツは保持されません。attach が指定された場合、リソースは個別のファイルとして保持され、これらのすべてのファイルはHARファイルとともにアーカイブされます。HAR仕様に従って、コンテンツをHARファイルにインラインで保存する embed がデフォルトです。

    • setRecordHarMode enum HarMode { FULL, MINIMAL } (任意)#

      minimalに設定すると、HARからのルーティングに必要な情報のみが記録されます。これにより、HARからリプレイするときに使用されないサイズ、タイミング、ページ、クッキー、セキュリティ、その他の種類のHAR情報が省略されます。デフォルトはfullです。

    • setRecordHarOmitContent boolean (任意)#

      HARからリクエストコンテンツを除外するかどうかを制御するオプション設定。デフォルトは false です。

    • setRecordHarPath Path (任意)#

      すべてのページの HAR 記録をファイルシステム上の指定された HAR ファイルに有効にします。指定しない場合、HAR は記録されません。HAR を保存するには BrowserContext.close() を呼び出す必要があります。

    • setRecordHarUrlFilter String | Pattern (任意)#

    • setRecordVideoDir Path (任意)#

      すべてのページのビデオ録画を指定されたディレクトリに有効にします。指定しない場合、ビデオは録画されません。ビデオを保存するには BrowserContext.close() を呼び出す必要があります。

    • setRecordVideoSize RecordVideoSize (任意)#

      • setWidth int

        ビデオフレームの幅。

      • setHeight int

        ビデオフレームの高さ。

      記録されたビデオの寸法。指定されていない場合、サイズは800x800に収まるようにスケーリングされた viewport と同じになります。viewport が明示的に設定されていない場合、ビデオサイズはデフォルトで800x450になります。必要に応じて、各ページの実際の画像は指定されたサイズに収まるようにスケーリングされます。

    • setReducedMotion null | enum ReducedMotion { REDUCE, NO_PREFERENCE } (任意)#

      'prefers-reduced-motion' メディア機能をエミュレートします。サポートされている値は 'reduce''no-preference' です。詳細については Page.emulateMedia() を参照してください。null を渡すと、エミュレーションがシステムのデフォルトにリセットされます。デフォルトは 'no-preference' です。

    • setScreenSize ScreenSize (任意)#

      • setWidth int

        ページ幅(ピクセル単位)。

      • setHeight int

        ページ高さ(ピクセル単位)。

      window.screen を介して Web ページ内で利用可能な一貫したウィンドウ画面サイズをエミュレートします。setViewportSize が設定されている場合にのみ使用されます。

    • setServiceWorkers enum ServiceWorkerPolicy { ALLOW, BLOCK } (任意)#

      サイトがサービスワーカーを登録することを許可するかどうか。デフォルトは'allow'です。

      • 'allow': サービスワーカーを登録できます。
      • 'block': Playwrightはすべてのサービスワーカーの登録をブロックします。
    • setStorageState String (任意)#

      与えられたストレージ状態でコンテキストを埋めます。このオプションは、BrowserContext.storageState() を介して取得されたログイン情報でコンテキストを初期化するために使用できます。

    • setStorageStatePath Path (任意)追加バージョン: v1.9#

      与えられたストレージ状態でコンテキストを埋めます。このオプションは、BrowserContext.storageState() を介して取得されたログイン情報でコンテキストを初期化するために使用できます。保存されたストレージ状態を持つファイルへのパス。

    • setStrictSelectors boolean (任意)#

      true に設定すると、このコンテキストで厳密セレクタモードが有効になります。厳密セレクタモードでは、単一のターゲット DOM 要素を意味するセレクタに対するすべての操作は、複数の要素がセレクタに一致する場合にスローされます。このオプションは Locator API には影響しません (Locator は常に厳密です)。デフォルトは false です。厳密モードの詳細については Locator を参照してください。

    • setTimezoneId String (任意)#

      コンテキストのタイムゾーンを変更します。サポートされているタイムゾーンIDのリストについては、ICUのmetaZones.txtを参照してください。デフォルトはシステムのタイムゾーンです。

    • setUserAgent String (任意)#

      このコンテキストで使用する特定のユーザーエージェント。

    • setViewportSize null | ViewportSize (任意)#

      • setWidth int

        ページ幅(ピクセル単位)。

      • setHeight int

        ページ高さ(ピクセル単位)。

      各ページに一貫したビューポートをエミュレートします。デフォルトは 1280x720 のビューポートです。一貫したビューポートエミュレーションを無効にするには null を使用します。ビューポートエミュレーションの詳細はこちら。

      null値はデフォルトのプリセットからオプトアウトし、ビューポートをオペレーティングシステムによって定義されるホストウィンドウサイズに依存させます。これにより、テストの実行が非決定論的になります。

戻り値


newPage

v1.9より前に追加 browser.newPage

新しいブラウザコンテキストに新しいページを作成します。このページを閉じると、コンテキストも閉じられます。

これは、シングルページシナリオや短いスニペットにのみ使用すべき便利な API です。プロダクションコードやテストフレームワークは、その正確なライフタイムを制御するために、Browser.newContext() に続けて BrowserContext.newPage() を明示的に作成する必要があります。

使用法

Browser.newPage();
Browser.newPage(options);

引数

  • options Browser.NewPageOptions (任意)
    • setAcceptDownloads boolean (任意)#

      すべての添付ファイルを自動的にダウンロードするかどうか。デフォルトはtrueで、すべてのダウンロードが受け入れられます。

    • setBaseURL String (任意)#

      Page.navigate()Page.route()Page.waitForURL()Page.waitForRequest()、または Page.waitForResponse() を使用する場合、対応する URL を構築するために URL() コンストラクタを使用することにより、ベース URL を考慮します。デフォルトでは未設定です。例

      • baseURL: https://:3000/bar.htmlにナビゲートすると、https://:3000/bar.htmlになります。
      • baseURL: https://:3000/foo/./bar.htmlにナビゲートすると、https://:3000/foo/bar.htmlになります。
      • baseURL: https://:3000/foo(末尾にスラッシュなし)で./bar.htmlにナビゲートすると、https://:3000/bar.htmlになります。
    • setBypassCSP boolean (任意)#

      ページのコンテンツセキュリティポリシーをバイパスするかどうかを切り替えます。デフォルトはfalseです。

    • setClientCertificates List<ClientCertificates> (任意)追加されたバージョン: 1.46#

      • setOrigin String

        証明書が有効な正確なオリジン。オリジンにはhttpsプロトコル、ホスト名、オプションでポートが含まれます。

      • setCertPath Path (任意)

        PEM形式の証明書ファイルへのパス。

      • setCert byte[] (任意)

        PEM形式の証明書の直接値。

      • setKeyPath Path (任意)

        PEM形式の秘密鍵ファイルへのパス。

      • setKey byte[] (任意)

        PEM形式の秘密鍵の直接値。

      • setPfxPath Path (任意)

        PFXまたはPKCS12形式でエンコードされた秘密鍵と証明書チェーンへのパス。

      • setPfx byte[] (任意)

        PFXまたはPKCS12形式でエンコードされた秘密鍵と証明書チェーンの直接値。

      • setPassphrase String (任意)

        秘密鍵(PEMまたはPFX)のパスフレーズ。

      TLSクライアント認証により、サーバーはクライアント証明書を要求し、それを検証できます。

      詳細

      使用するクライアント証明書の配列。各証明書オブジェクトは、certPathkeyPathの両方、単一のpfxPath、またはそれらに対応する直接値(certkey、またはpfx)のいずれかを持っている必要があります。オプションで、証明書が暗号化されている場合はpassphraseプロパティを提供する必要があります。originプロパティは、証明書が有効なリクエストオリジンと正確に一致するように提供する必要があります。

      クライアント証明書認証は、少なくとも1つのクライアント証明書が提供された場合にのみ有効になります。サーバーから送信されたすべてのクライアント証明書を拒否したい場合は、訪問する予定のドメインのいずれとも一致しないoriginを持つクライアント証明書を提供する必要があります。

      macOSでWebKitを使用している場合、localhostにアクセスしてもクライアント証明書は取得されません。localhostlocal.playwrightに置き換えることで機能させることができます。

    • setColorScheme null | enum ColorScheme { LIGHT, DARK, NO_PREFERENCE } (任意)#

      prefers-colors-scheme メディア機能をエミュレートします。サポートされている値は 'light''dark' です。詳細については Page.emulateMedia() を参照してください。null を渡すと、エミュレーションがシステムのデフォルトにリセットされます。デフォルトは 'light' です。

    • setContrast null | enum Contrast { NO_PREFERENCE, MORE } (任意)#

      'prefers-contrast' メディア機能をエミュレートします。サポートされている値は 'no-preference''more' です。詳細については Page.emulateMedia() を参照してください。null を渡すと、エミュレーションがシステムのデフォルトにリセットされます。デフォルトは 'no-preference' です。

    • setDeviceScaleFactor double (任意)#

      デバイススケールファクター (dpr と考えることができます) を指定します。デフォルトは 1 です。デバイススケールファクターによるデバイスのエミュレーションの詳細はこちら。

    • setExtraHTTPHeaders Map<String, String> (任意)#

      すべてのリクエストと一緒に送信される追加のHTTPヘッダーを含むオブジェクト。デフォルトはなし。

    • setForcedColors null | enum ForcedColors { ACTIVE, NONE } (任意)#

      'forced-colors' メディア機能をエミュレートします。サポートされている値は 'active''none' です。詳細については Page.emulateMedia() を参照してください。null を渡すと、エミュレーションがシステムのデフォルトにリセットされます。デフォルトは 'none' です。

    • setGeolocation Geolocation (任意)#

      • setLatitude double

        -90から90の間の緯度。

      • setLongitude double

        -180から180の間の経度。

      • setAccuracy double (任意)

        非負の精度値。デフォルトは0です。

    • setHasTouch boolean (任意)#

      ビューポートがタッチイベントをサポートするかどうかを指定します。デフォルトは false です。モバイルエミュレーションの詳細はこちら。

    • setHttpCredentials HttpCredentials (任意)#

      • setUsername String

      • setPassword String

      • setOrigin String (任意)

        特定のオリジン(scheme://host:port)でのhttp資格情報の送信を制限します:ポート).

      • setSend enum HttpCredentialsSend { UNAUTHORIZED, ALWAYS } (任意)

        このオプションは、対応する APIRequestContext から送信されるリクエストにのみ適用され、ブラウザから送信されるリクエストには影響しません。'always' - 基本認証資格情報を含む Authorization ヘッダーが各APIリクエストとともに送信されます。'unauthorized' - 資格情報は WWW-Authenticate ヘッダーを含む401 (Unauthorized) レスポンスが受信された場合にのみ送信されます。デフォルトは 'unauthorized' です。

      HTTP認証用の資格情報。オリジンが指定されていない場合、ユーザー名とパスワードは、不正な応答があった場合にすべてのサーバーに送信されます。

    • setIgnoreHTTPSErrors boolean (任意)#

      ネットワークリクエストを送信する際にHTTPSエラーを無視するかどうか。デフォルトはfalseです。

    • setIsMobile boolean (任意)#

      meta viewport タグが考慮され、タッチイベントが有効になるかどうか。isMobile はデバイスの一部であるため、手動で設定する必要はありません。デフォルトは false で、Firefox ではサポートされていません。モバイルエミュレーションの詳細はこちら。

    • setJavaScriptEnabled boolean (任意)#

      コンテキストで JavaScript を有効にするかどうか。デフォルトは true です。JavaScript の無効化の詳細はこちら。

    • setLocale String (任意)#

      ユーザーロケールを指定します (例: en-GBde-DE など)。ロケールは、navigator.language の値、Accept-Language リクエストヘッダーの値、および数値と日付の書式設定規則に影響を与えます。デフォルトはシステムのデフォルトロケールです。エミュレーションガイドでエミュレーションの詳細をご覧ください。

    • setOffline boolean (任意)#

      ネットワークがオフラインであることをエミュレートするかどうか。デフォルトは false です。ネットワークエミュレーションの詳細はこちら。

    • setPermissions List<String> (任意)#

      このコンテキスト内のすべてのページに付与する権限のリスト。詳細については BrowserContext.grantPermissions() を参照してください。デフォルトはなし。

    • setProxy Proxy (任意)#

      • setServer String

        すべてのリクエストに使用するプロキシ。HTTPおよびSOCKSプロキシがサポートされており、例としてhttp://myproxy.com:3128またはsocks5://myproxy.com:3128があります。短縮形myproxy.com:3128はHTTPプロキシと見なされます。

      • setBypass String (任意)

        プロキシをバイパスするオプションのカンマ区切りドメイン。例: ".com, chromium.org, .domain.com"

      • setUsername String (任意)

        HTTPプロキシが認証を必要とする場合に使用するオプションのユーザー名。

      • setPassword String (任意)

        HTTPプロキシが認証を必要とする場合に使用するオプションのパスワード。

      このコンテキストで使用するネットワークプロキシ設定。デフォルトはなしです。

    • setRecordHarContent enum HarContentPolicy { OMIT, EMBED, ATTACH } (任意)#

      リソースコンテンツ管理を制御するオプション設定。omit が指定された場合、コンテンツは保持されません。attach が指定された場合、リソースは個別のファイルとして保持され、これらのすべてのファイルはHARファイルとともにアーカイブされます。HAR仕様に従って、コンテンツをHARファイルにインラインで保存する embed がデフォルトです。

    • setRecordHarMode enum HarMode { FULL, MINIMAL } (任意)#

      minimalに設定すると、HARからのルーティングに必要な情報のみが記録されます。これにより、HARからリプレイするときに使用されないサイズ、タイミング、ページ、クッキー、セキュリティ、その他の種類のHAR情報が省略されます。デフォルトはfullです。

    • setRecordHarOmitContent boolean (任意)#

      HARからリクエストコンテンツを除外するかどうかを制御するオプション設定。デフォルトは false です。

    • setRecordHarPath Path (任意)#

      すべてのページの HAR 記録をファイルシステム上の指定された HAR ファイルに有効にします。指定しない場合、HAR は記録されません。HAR を保存するには BrowserContext.close() を呼び出す必要があります。

    • setRecordHarUrlFilter String | Pattern (任意)#

    • setRecordVideoDir Path (任意)#

      すべてのページのビデオ録画を指定されたディレクトリに有効にします。指定しない場合、ビデオは録画されません。ビデオを保存するには BrowserContext.close() を呼び出す必要があります。

    • setRecordVideoSize RecordVideoSize (任意)#

      • setWidth int

        ビデオフレームの幅。

      • setHeight int

        ビデオフレームの高さ。

      記録されたビデオの寸法。指定されていない場合、サイズは800x800に収まるようにスケーリングされた viewport と同じになります。viewport が明示的に設定されていない場合、ビデオサイズはデフォルトで800x450になります。必要に応じて、各ページの実際の画像は指定されたサイズに収まるようにスケーリングされます。

    • setReducedMotion null | enum ReducedMotion { REDUCE, NO_PREFERENCE } (任意)#

      'prefers-reduced-motion' メディア機能をエミュレートします。サポートされている値は 'reduce''no-preference' です。詳細については Page.emulateMedia() を参照してください。null を渡すと、エミュレーションがシステムのデフォルトにリセットされます。デフォルトは 'no-preference' です。

    • setScreenSize ScreenSize (任意)#

      • setWidth int

        ページ幅(ピクセル単位)。

      • setHeight int

        ページ高さ(ピクセル単位)。

      window.screen を介して Web ページ内で利用可能な一貫したウィンドウ画面サイズをエミュレートします。setViewportSize が設定されている場合にのみ使用されます。

    • setServiceWorkers enum ServiceWorkerPolicy { ALLOW, BLOCK } (任意)#

      サイトがサービスワーカーを登録することを許可するかどうか。デフォルトは'allow'です。

      • 'allow': サービスワーカーを登録できます。
      • 'block': Playwrightはすべてのサービスワーカーの登録をブロックします。
    • setStorageState String (任意)#

      与えられたストレージ状態でコンテキストを埋めます。このオプションは、BrowserContext.storageState() を介して取得されたログイン情報でコンテキストを初期化するために使用できます。

    • setStorageStatePath Path (任意)追加バージョン: v1.9#

      与えられたストレージ状態でコンテキストを埋めます。このオプションは、BrowserContext.storageState() を介して取得されたログイン情報でコンテキストを初期化するために使用できます。保存されたストレージ状態を持つファイルへのパス。

    • setStrictSelectors boolean (任意)#

      true に設定すると、このコンテキストで厳密セレクタモードが有効になります。厳密セレクタモードでは、単一のターゲット DOM 要素を意味するセレクタに対するすべての操作は、複数の要素がセレクタに一致する場合にスローされます。このオプションは Locator API には影響しません (Locator は常に厳密です)。デフォルトは false です。厳密モードの詳細については Locator を参照してください。

    • setTimezoneId String (任意)#

      コンテキストのタイムゾーンを変更します。サポートされているタイムゾーンIDのリストについては、ICUのmetaZones.txtを参照してください。デフォルトはシステムのタイムゾーンです。

    • setUserAgent String (任意)#

      このコンテキストで使用する特定のユーザーエージェント。

    • setViewportSize null | ViewportSize (任意)#

      • setWidth int

        ページ幅(ピクセル単位)。

      • setHeight int

        ページ高さ(ピクセル単位)。

      各ページに一貫したビューポートをエミュレートします。デフォルトは 1280x720 のビューポートです。一貫したビューポートエミュレーションを無効にするには null を使用します。ビューポートエミュレーションの詳細はこちら。

      null値はデフォルトのプリセットからオプトアウトし、ビューポートをオペレーティングシステムによって定義されるホストウィンドウサイズに依存させます。これにより、テストの実行が非決定論的になります。

戻り値


startTracing

追加されたバージョン: v1.11 browser.startTracing

この API は、低レベルの Chromium 固有のデバッグツールである Chromium Tracing を制御します。Playwright Tracing を制御する API はこちらにあります。

Browser.startTracing()Browser.stopTracing() を使用して、Chrome DevTools のパフォーマンスパネルで開くことができるトレースファイルを作成できます。

使用法

browser.startTracing(page, new Browser.StartTracingOptions()
.setPath(Paths.get("trace.json")));
page.navigate("https://www.google.com");
browser.stopTracing();

引数

  • page Page (任意)#

    オプションです。指定されている場合、トレースには指定されたページのスクリーンショットが含まれます。

  • options Browser.StartTracingOptions (任意)

    • setCategories List<String> (任意)#

      デフォルトの代わりにカスタムカテゴリを指定します。

    • setPath Path (任意)#

      トレースファイルの書き込み先パス。

    • setScreenshots boolean (任意)#

      トレースにスクリーンショットをキャプチャします。

戻り値


stopTracing

追加されたバージョン: v1.11 browser.stopTracing

この API は、低レベルの Chromium 固有のデバッグツールである Chromium Tracing を制御します。Playwright Tracing を制御する API はこちらにあります。

トレースデータを含むバッファを返します。

使用法

Browser.stopTracing();

戻り値


version

v1.9より前に追加 browser.version

ブラウザのバージョンを返します。

使用法

Browser.version();

戻り値


イベント

onDisconnected(handler)

v1.9より前に追加 browser.onDisconnected(handler)

Browser がブラウザアプリケーションから切断されたときに発生します。これは以下のいずれかの理由で発生する可能性があります。

  • ブラウザアプリケーションが閉じられたかクラッシュした。
  • Browser.close() メソッドが呼び出されました。

使用法

Browser.onDisconnected(handler)

イベントデータ