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

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

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

注意

このメソッドを直接使用してBrowserContextを作成する場合、コードがBrowserContextの処理を終えたとき、およびbrowser.close()を呼び出す前に、返されたコンテキストをbrowser_context.close()で明示的に閉じるのがベストプラクティスです。これにより、コンテキストが正常に閉じられ、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 *(オプション)*#

    ページのContent-Security-Policyのバイパスを切り替えます。デフォルトは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プロパティは、証明書が有効なリクエストのオリジンと正確に一致するように指定する必要があります。

    注意

    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 *(オプション)*

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

    • send "unauthorized" | "always" *(オプション)*

      このオプションは、対応するAPIRequestContextから送信されるリクエストにのみ適用され、ブラウザから送信されるリクエストには影響しません。'always' - 各APIリクエストとともに基本認証資格情報を含むAuthorizationヘッダーが送信されます。'unauthorized - 資格情報はWWW-Authenticateヘッダーを含む401(未承認)応答を受信した場合にのみ送信されます。デフォルトは'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-GBde-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:3128socks5://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ファイルとともにアーカイブされます。デフォルトはembedで、HAR仕様に従ってコンテンツをHARファイル内にインラインで保存します。

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

    minimalに設定すると、HARからのルーティングに必要な情報のみを記録します。これにより、HARから再生する際には使用されないサイズ、タイミング、ページ、Cookie、セキュリティ、その他の種類の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

      ビデオフレームの高さ。

    録画されたビデオの寸法。指定されていない場合、サイズはviewportを800x800に収まるように縮小した値と等しくなります。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" *(オプション)*#

    サイトがService Workerを登録することを許可するかどうか。デフォルトは'allow'です。

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

    • cookies List[Dict]
      • name str

      • value str

      • domain str

        ドメインとパスは必須です。Cookieをすべてのサブドメインにも適用するには、ドメインの前にドットを付けます。例:「.example.com」

      • path str

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

      • expires float

        秒単位のUnix時間。

      • httpOnly bool

      • secure bool

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

        sameSiteフラグ

      コンテキストに設定するCookie
    • origins List[Dict]
      • origin str

      • localStorage List[Dict]

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

    ストレージの状態と認証について詳しくはこちらをご覧ください。

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

  • strict_selectors bool *(オプション)*#

    trueに設定すると、このコンテキストで厳密セレクターモードが有効になります。厳密セレクターモードでは、単一のターゲットDOM要素を意味するセレクターに対するすべての操作は、複数の要素がセレクターに一致する場合にエラーをスローします。このオプションはLocator APIには影響しません(Locatorは常に厳密です)。デフォルトは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 *(オプション)*#

    ページのContent-Security-Policyのバイパスを切り替えます。デフォルトは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プロパティは、証明書が有効なリクエストのオリジンと正確に一致するように指定する必要があります。

    注意

    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 *(オプション)*

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

    • send "unauthorized" | "always" *(オプション)*

      このオプションは、対応するAPIRequestContextから送信されるリクエストにのみ適用され、ブラウザから送信されるリクエストには影響しません。'always' - 各APIリクエストとともに基本認証資格情報を含むAuthorizationヘッダーが送信されます。'unauthorized - 資格情報はWWW-Authenticateヘッダーを含む401(未承認)応答を受信した場合にのみ送信されます。デフォルトは'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-GBde-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:3128socks5://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ファイルとともにアーカイブされます。デフォルトはembedで、HAR仕様に従ってコンテンツをHARファイル内にインラインで保存します。

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

    minimalに設定すると、HARからのルーティングに必要な情報のみを記録します。これにより、HARから再生する際には使用されないサイズ、タイミング、ページ、Cookie、セキュリティ、その他の種類の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

      ビデオフレームの高さ。

    録画されたビデオの寸法。指定されていない場合、サイズはviewportを800x800に収まるように縮小した値と等しくなります。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" *(オプション)*#

    サイトがService Workerを登録することを許可するかどうか。デフォルトは'allow'です。

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

    • cookies List[Dict]
      • name str

      • value str

      • domain str

        ドメインとパスは必須です。Cookieをすべてのサブドメインにも適用するには、ドメインの前にドットを付けます。例:「.example.com」

      • path str

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

      • expires float

        秒単位のUnix時間。

      • httpOnly bool

      • secure bool

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

        sameSiteフラグ

      コンテキストに設定するCookie
    • origins List[Dict]
      • origin str

      • localStorage List[Dict]

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

    ストレージの状態と認証について詳しくはこちらをご覧ください。

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

  • strict_selectors bool *(オプション)*#

    trueに設定すると、このコンテキストで厳密セレクターモードが有効になります。厳密セレクターモードでは、単一のターゲットDOM要素を意味するセレクターに対するすべての操作は、複数の要素がセレクターに一致する場合にエラーをスローします。このオプションはLocator APIには影響しません(Locatorは常に厳密です)。デフォルトは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.close()メソッドが呼び出された。

使用例

browser.on("disconnected", handler)

イベントデータ