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

Browser

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

from playwright.sync_api import sync_playwright, Playwright

def run(playwright: Playwright):
firefox = playwright.firefox
browser = firefox.launch()
page = browser.new_page()
page.goto("https://example.com")
browser.close()

with sync_playwright() as playwright:
run(playwright)

メソッド

close

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

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

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

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

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

使用法

browser.close()
browser.close(**kwargs)

引数

  • reason str (オプション)追加されたバージョン: v1.40#

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

戻り値


new_browser_cdp_session

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

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

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

使用法

browser.new_browser_cdp_session()

戻り値


new_context

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

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

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

使用法

browser = playwright.firefox.launch() # or "chromium" or "webkit".
# create a new incognito browser context.
context = browser.new_context()
# create a new page in a pristine context.
page = context.new_page()
page.goto("https://example.com")

# gracefully close up everything
context.close()
browser.close()

引数

  • accept_downloads bool (オプション)#

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

  • base_url str (オプション)#

    page.goto(), page.route(), page.wait_for_url(), page.expect_request(), または page.expect_response() を使用する場合、対応する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になります。
  • bypass_csp bool (オプション)#

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

  • client_certificates List[Dict] (オプション)追加されたバージョン: 1.46#

    • origin str

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

    • certPath Union[str, pathlib.Path] (オプション)

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

    • cert bytes (オプション)

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

    • keyPath Union[str, pathlib.Path] (オプション)

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

    • key bytes (オプション)

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

    • pfxPath Union[str, pathlib.Path] (オプション)

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

    • pfx bytes (オプション)

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

    • passphrase str (オプション)

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

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

    詳細

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

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

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

  • color_scheme "light" | "dark" | "no-preference" | "null" (オプション)#

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

  • contrast "no-preference" | "more" | "null" (オプション)#

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

  • device_scale_factor float (オプション)#

    デバイススケールファクタ(dprと考えることができます)を指定します。デフォルトは 1 です。デバイススケールファクタを使用したデバイスのエミュレーションについて詳しく学びましょう。

  • extra_http_headers Dict[str, str] (オプション)#

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

  • forced_colors "active" | "none" | "null" (オプション)#

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

  • geolocation Dict (オプション)#

    • latitude float

      -90から90の間の緯度。

    • longitude float

      -180から180の間の経度。

    • accuracy float (オプション)

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

  • has_touch bool (オプション)#

    ビューポートがタッチイベントをサポートしているかどうかを指定します。デフォルトはfalseです。モバイルエミュレーションについて詳しく学びましょう。

  • http_credentials Dict (オプション)#

    • username str

    • password str

    • origin str (オプション)

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

    • send "unauthorized" | "always" (optional)

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

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

  • ignore_https_errors bool (オプション)#

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

  • is_mobile bool (オプション)#

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

  • java_script_enabled bool (オプション)#

    コンテキストでJavaScriptを有効にするかどうか。デフォルトは true です。JavaScriptの無効化について詳しく学びましょう。

  • locale str (オプション)#

    ユーザーロケールを指定します。例えば en-GB, de-DE など。ロケールは navigator.language の値、Accept-Language リクエストヘッダーの値、および数値と日付の書式設定ルールに影響します。デフォルトはシステムデフォルトロケールです。エミュレーションガイドでエミュレーションについて詳しく学びましょう。

  • no_viewport bool (オプション)#

    固定ビューポートを強制せず、ヘッダー付きモードでウィンドウのサイズ変更を許可します。

  • offline bool (オプション)#

    ネットワークがオフラインであるとエミュレートするかどうか。デフォルトは false です。ネットワークエミュレーションについて詳しく学びましょう。

  • permissions List[str] (オプション)#

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

  • proxy Dict (オプション)#

    • server str

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

    • bypass str (オプション)

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

    • username str (オプション)

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

    • password str (オプション)

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

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

  • record_har_content "omit" | "embed" | "attach" (オプション)#

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

  • record_har_mode "full" | "minimal" (オプション)#

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

  • record_har_omit_content bool (オプション)#

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

  • record_har_path Union[str, pathlib.Path] (オプション)#

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

  • record_har_url_filter str | Pattern (オプション)#

  • record_video_dir Union[str, pathlib.Path] (オプション)#

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

  • record_video_size Dict (オプション)#

    • width int

      ビデオフレームの幅。

    • height int

      ビデオフレームの高さ。

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

  • reduced_motion "reduce" | "no-preference" | "null" (オプション)#

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

  • screen Dict (オプション)#

    • width int

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

    • height int

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

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

  • service_workers "allow" | "block" (オプション)#

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

    • 'allow': サービスワーカーを登録できます。
    • 'block': Playwrightはすべてのサービスワーカーの登録をブロックします。
  • storage_state Union[str, pathlib.Path] | Dict (オプション)#

    • cookies List[Dict]

      • name str

      • value str

      • domain str

        ドメインとパスは必須です。クッキーをすべてのサブドメインにも適用するには、このようにドメインをドットでプレフィックスします: ".example.com"

      • path str

        ドメインとパスは必須です

      • expires float

        Unix 時間 (秒)。

      • httpOnly bool

      • secure bool

      • sameSite "Strict" | "Lax" | "None"

        sameSite フラグ

      コンテキストに設定するクッキー

    • origins List[Dict]

      • origin str

      • localStorage List[Dict]

        コンテキストに設定する localStorage

    ストレージ状態と認証について詳しく学びましょう。

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

  • strict_selectors bool (オプション)#

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

  • timezone_id str (オプション)#

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

  • user_agent str (オプション)#

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

  • viewport NoneType | Dict (オプション)#

    • width int

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

    • height int

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

    各ページに一貫したビューポートを設定します。デフォルトは1280x720のビューポートです。no_viewport は固定ビューポートを無効にします。ビューポートエミュレーションについて詳しく学びましょう。

戻り値


new_page

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

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

これは、単一ページのシナリオや短いスニペットにのみ使用すべき便利なAPIです。製品コードやテストフレームワークでは、正確なライフタイムを制御するために、browser.new_context() に続いて browser_context.new_page() を明示的に作成する必要があります。

使用法

browser.new_page()
browser.new_page(**kwargs)

引数

  • accept_downloads bool (オプション)#

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

  • base_url str (オプション)#

    page.goto(), page.route(), page.wait_for_url(), page.expect_request(), または page.expect_response() を使用する場合、対応する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になります。
  • bypass_csp bool (オプション)#

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

  • client_certificates List[Dict] (オプション)追加されたバージョン: 1.46#

    • origin str

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

    • certPath Union[str, pathlib.Path] (オプション)

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

    • cert bytes (オプション)

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

    • keyPath Union[str, pathlib.Path] (オプション)

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

    • key bytes (オプション)

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

    • pfxPath Union[str, pathlib.Path] (オプション)

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

    • pfx bytes (オプション)

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

    • passphrase str (オプション)

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

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

    詳細

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

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

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

  • color_scheme "light" | "dark" | "no-preference" | "null" (オプション)#

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

  • contrast "no-preference" | "more" | "null" (オプション)#

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

  • device_scale_factor float (オプション)#

    デバイススケールファクタ(dprと考えることができます)を指定します。デフォルトは 1 です。デバイススケールファクタを使用したデバイスのエミュレーションについて詳しく学びましょう。

  • extra_http_headers Dict[str, str] (オプション)#

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

  • forced_colors "active" | "none" | "null" (オプション)#

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

  • geolocation Dict (オプション)#

    • latitude float

      -90から90の間の緯度。

    • longitude float

      -180から180の間の経度。

    • accuracy float (オプション)

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

  • has_touch bool (オプション)#

    ビューポートがタッチイベントをサポートしているかどうかを指定します。デフォルトはfalseです。モバイルエミュレーションについて詳しく学びましょう。

  • http_credentials Dict (オプション)#

    • username str

    • password str

    • origin str (オプション)

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

    • send "unauthorized" | "always" (optional)

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

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

  • ignore_https_errors bool (オプション)#

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

  • is_mobile bool (オプション)#

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

  • java_script_enabled bool (オプション)#

    コンテキストでJavaScriptを有効にするかどうか。デフォルトは true です。JavaScriptの無効化について詳しく学びましょう。

  • locale str (オプション)#

    ユーザーロケールを指定します。例えば en-GB, de-DE など。ロケールは navigator.language の値、Accept-Language リクエストヘッダーの値、および数値と日付の書式設定ルールに影響します。デフォルトはシステムデフォルトロケールです。エミュレーションガイドでエミュレーションについて詳しく学びましょう。

  • no_viewport bool (オプション)#

    固定ビューポートを強制せず、ヘッダー付きモードでウィンドウのサイズ変更を許可します。

  • offline bool (オプション)#

    ネットワークがオフラインであるとエミュレートするかどうか。デフォルトは false です。ネットワークエミュレーションについて詳しく学びましょう。

  • permissions List[str] (オプション)#

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

  • proxy Dict (オプション)#

    • server str

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

    • bypass str (オプション)

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

    • username str (オプション)

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

    • password str (オプション)

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

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

  • record_har_content "omit" | "embed" | "attach" (オプション)#

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

  • record_har_mode "full" | "minimal" (オプション)#

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

  • record_har_omit_content bool (オプション)#

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

  • record_har_path Union[str, pathlib.Path] (オプション)#

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

  • record_har_url_filter str | Pattern (オプション)#

  • record_video_dir Union[str, pathlib.Path] (オプション)#

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

  • record_video_size Dict (オプション)#

    • width int

      ビデオフレームの幅。

    • height int

      ビデオフレームの高さ。

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

  • reduced_motion "reduce" | "no-preference" | "null" (オプション)#

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

  • screen Dict (オプション)#

    • width int

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

    • height int

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

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

  • service_workers "allow" | "block" (オプション)#

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

    • 'allow': サービスワーカーを登録できます。
    • 'block': Playwrightはすべてのサービスワーカーの登録をブロックします。
  • storage_state Union[str, pathlib.Path] | Dict (オプション)#

    • cookies List[Dict]

      • name str

      • value str

      • domain str

        ドメインとパスは必須です。クッキーをすべてのサブドメインにも適用するには、このようにドメインをドットでプレフィックスします: ".example.com"

      • path str

        ドメインとパスは必須です

      • expires float

        Unix 時間 (秒)。

      • httpOnly bool

      • secure bool

      • sameSite "Strict" | "Lax" | "None"

        sameSite フラグ

      コンテキストに設定するクッキー

    • origins List[Dict]

      • origin str

      • localStorage List[Dict]

        コンテキストに設定する localStorage

    ストレージ状態と認証について詳しく学びましょう。

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

  • strict_selectors bool (オプション)#

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

  • timezone_id str (オプション)#

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

  • user_agent str (オプション)#

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

  • viewport NoneType | Dict (オプション)#

    • width int

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

    • height int

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

    各ページに一貫したビューポートを設定します。デフォルトは1280x720のビューポートです。no_viewport は固定ビューポートを無効にします。ビューポートエミュレーションについて詳しく学びましょう。

戻り値


start_tracing

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

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

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

使用法

browser.start_tracing(page, path="trace.json")
page.goto("https://www.google.com")
browser.stop_tracing()

引数

  • page Page (オプション)#

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

  • categories List[str] (オプション)#

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

  • path Union[str, pathlib.Path] (オプション)#

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

  • screenshots bool (オプション)#

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

戻り値


stop_tracing

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

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

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

使用法

browser.stop_tracing()

戻り値


プロパティ

browser_type

追加日: v1.23 browser.browser_type

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

使用法

browser.browser_type

戻り値


contexts

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

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

使用法

browser = pw.webkit.launch()
print(len(browser.contexts)) # prints `0`
context = browser.new_context()
print(len(browser.contexts)) # prints `1`

戻り値


is_connected

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

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

使用法

browser.is_connected()

戻り値


version

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

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

使用法

browser.version

戻り値


イベント

on("disconnected")

v1.9より前に追加 browser.on("disconnected")

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

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

使用法

browser.on("disconnected", handler)

イベントデータ