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

APIRequestContext

このAPIは、Web APIテストに使用されます。APIエンドポイントのトリガー、マイクロサービスの構成、e2eテストのための環境やサービスの準備に使用できます。

各 Playwright ブラウザコンテキストには、ブラウザコンテキストとクッキーストレージを共有する APIRequestContext インスタンスが関連付けられています。これには browser_context.request または page.request を介してアクセスできます。また、api_request.new_context() を呼び出すことで、新しい APIRequestContext インスタンスを手動で作成することも可能です。

クッキー管理

browser_context.request および page.request によって返される APIRequestContext は、対応する BrowserContext とクッキーストレージを共有します。各 API リクエストには、ブラウザコンテキストからの値で Cookie ヘッダーが設定されます。API レスポンスに Set-Cookie ヘッダーが含まれている場合、それは自動的に BrowserContext のクッキーを更新し、ページから行われたリクエストはそれらを取得します。これは、この API を使用してログインすると、e2e テストもログイン状態になり、その逆も同様であることを意味します。

API リクエストがブラウザのクッキーに干渉しないようにしたい場合は、api_request.new_context() を呼び出して新しい APIRequestContext を作成する必要があります。このような APIRequestContext オブジェクトは、独自の分離されたクッキーストレージを持ちます。

import os
from playwright.sync_api import sync_playwright

REPO = "test-repo-1"
USER = "github-username"
API_TOKEN = os.getenv("GITHUB_API_TOKEN")

with sync_playwright() as p:
# This will launch a new browser, create a context and page. When making HTTP
# requests with the internal APIRequestContext (e.g. `context.request` or `page.request`)
# it will automatically set the cookies to the browser page and vice versa.
browser = p.chromium.launch()
context = browser.new_context(base_url="https://api.github.com")
api_request_context = context.request
page = context.new_page()

# Alternatively you can create a APIRequestContext manually without having a browser context attached:
# api_request_context = p.request.new_context(base_url="https://api.github.com")


# Create a repository.
response = api_request_context.post(
"/user/repos",
headers={
"Accept": "application/vnd.github.v3+json",
# Add GitHub personal access token.
"Authorization": f"token {API_TOKEN}",
},
data={"name": REPO},
)
assert response.ok
assert response.json()["name"] == REPO

# Delete a repository.
response = api_request_context.delete(
f"/repos/{USER}/{REPO}",
headers={
"Accept": "application/vnd.github.v3+json",
# Add GitHub personal access token.
"Authorization": f"token {API_TOKEN}",
},
)
assert response.ok
assert await response.body() == '{"status": "ok"}'

メソッド

delete

追加バージョン: v1.16 apiRequestContext.delete

HTTP(S) DELETEリクエストを送信し、そのレスポンスを返します。このメソッドは、コンテキストからリクエストのクッキーを設定し、レスポンスからコンテキストのクッキーを更新します。このメソッドは自動的にリダイレクトを追跡します。

使用法

api_request_context.delete(url)
api_request_context.delete(url, **kwargs)

引数

  • url str#

    ターゲットURL。

  • data str | bytes | Dict (オプション)追加バージョン: v1.17#

    リクエストのPOSTデータを設定できます。データパラメータがオブジェクトの場合、JSON文字列にシリアル化され、明示的に設定されていない限り content-type ヘッダーは application/json に設定されます。それ以外の場合、明示的に設定されていない限り content-type ヘッダーは application/octet-stream に設定されます。

  • fail_on_status_code bool (オプション)#

    2xxおよび3xx以外のレスポンスコードで例外をスローするかどうか。デフォルトでは、すべてのステータスコードでレスポンスオブジェクトが返されます。

  • form Dict[str, str | float | bool] (オプション)追加バージョン: v1.17#

    application/x-www-form-urlencodedエンコーディングを使用してhtmlフォームとしてシリアル化され、このリクエストボディとして送信されるオブジェクトを提供します。このパラメータが指定されている場合、明示的に提供されない限り、content-typeヘッダーはapplication/x-www-form-urlencodedに設定されます。

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

    HTTPヘッダーを設定できます。これらのヘッダーは、取得されたリクエストおよびそれによって開始されたすべてのリダイレクトに適用されます。

  • ignore_https_errors bool (オプション)#

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

  • max_redirects int (オプション)追加バージョン: v1.26#

    自動的にフォローされるリクエストのリダイレクトの最大数。この数を超えるとエラーがスローされます。デフォルトは 20 です。リダイレクトをフォローしない場合は 0 を渡します。

  • max_retries int (オプション)追加バージョン: v1.46#

    ネットワークエラーが再試行される最大回数。現在、ECONNRESET エラーのみが再試行されます。HTTP応答コードに基づく再試行は行われません。制限を超えるとエラーがスローされます。デフォルトは 0 (再試行なし) です。

  • multipart Dict[str, str | float | bool | [ReadStream] | Dict] (オプション)追加バージョン: v1.17#

    • name str

      ファイル名

    • mimeType str

      ファイルタイプ

    • buffer bytes

      ファイル内容

    このリクエストボディとして送信される multipart/form-data エンコーディングを使用して HTML フォームとしてシリアライズされるオブジェクトを提供します。このパラメータが指定されている場合、明示的に提供されていない限り content-type ヘッダーは multipart/form-data に設定されます。ファイル値は、ファイル名、MIMEタイプ、およびそのコンテンツを含むファイルのようなオブジェクトとして渡すことができます。

  • params Dict[str, str | float | bool] | str (オプション)#

    URLとともに送信されるクエリパラメータ。

  • timeout float (オプション)#

    リクエストのタイムアウト(ミリ秒単位)。デフォルトは 30000(30秒)です。タイムアウトを無効にするには 0 を渡します。

戻り値


dispose

追加バージョン: v1.16 apiRequestContext.dispose

api_request_context.get() および同様のメソッドによって返されるすべてのレスポンスはメモリに保存されるため、後で api_response.body() を呼び出すことができます。このメソッドはすべてのリソースを破棄し、破棄された APIRequestContext 上でメソッドを呼び出すと例外がスローされます。

使用法

api_request_context.dispose()
api_request_context.dispose(**kwargs)

引数

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

    コンテキストの破棄によって中断された操作に報告される理由。

戻り値


fetch

追加バージョン: v1.16 apiRequestContext.fetch

HTTP(S)リクエストを送信し、そのレスポンスを返します。このメソッドは、コンテキストからリクエストのクッキーを設定し、レスポンスからコンテキストのクッキーを更新します。このメソッドは自動的にリダイレクトを追跡します。

使用法

JSONオブジェクトはリクエストに直接渡すことができます。

data = {
"title": "Book Title",
"body": "John Doe",
}
api_request_context.fetch("https://example.com/api/createBook", method="post", data=data)

リクエストのボディにファイルを送信する一般的な方法は、multipartパラメータを指定して、multipart/form-dataエンコーディングでフォームフィールドとしてアップロードすることです。

api_request_context.fetch(
"https://example.com/api/uploadScript", method="post",
multipart={
"fileField": {
"name": "f.js",
"mimeType": "text/javascript",
"buffer": b"console.log(2022);",
},
})

引数

  • url_or_request str | Request#

    すべてのパラメータを取得するターゲットURLまたはリクエスト。

  • data str | bytes | Dict (オプション)#

    リクエストのPOSTデータを設定できます。データパラメータがオブジェクトの場合、JSON文字列にシリアル化され、明示的に設定されていない限り content-type ヘッダーは application/json に設定されます。それ以外の場合、明示的に設定されていない限り content-type ヘッダーは application/octet-stream に設定されます。

  • fail_on_status_code bool (オプション)#

    2xxおよび3xx以外のレスポンスコードで例外をスローするかどうか。デフォルトでは、すべてのステータスコードでレスポンスオブジェクトが返されます。

  • form Dict[str, str | float | bool] (オプション)#

    application/x-www-form-urlencodedエンコーディングを使用してhtmlフォームとしてシリアル化され、このリクエストボディとして送信されるオブジェクトを提供します。このパラメータが指定されている場合、明示的に提供されない限り、content-typeヘッダーはapplication/x-www-form-urlencodedに設定されます。

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

    HTTPヘッダーを設定できます。これらのヘッダーは、取得されたリクエストおよびそれによって開始されたすべてのリダイレクトに適用されます。

  • ignore_https_errors bool (オプション)#

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

  • max_redirects int (オプション)追加バージョン: v1.26#

    自動的にフォローされるリクエストのリダイレクトの最大数。この数を超えるとエラーがスローされます。デフォルトは 20 です。リダイレクトをフォローしない場合は 0 を渡します。

  • max_retries int (オプション)追加バージョン: v1.46#

    ネットワークエラーが再試行される最大回数。現在、ECONNRESET エラーのみが再試行されます。HTTP応答コードに基づく再試行は行われません。制限を超えるとエラーがスローされます。デフォルトは 0 (再試行なし) です。

  • method str (オプション)#

    設定されている場合、フェッチメソッドを変更します(例:PUTまたはPOST)。指定されていない場合、GETメソッドが使用されます。

  • multipart Dict[str, str | float | bool | [ReadStream] | Dict] (オプション)#

    • name str

      ファイル名

    • mimeType str

      ファイルタイプ

    • buffer bytes

      ファイル内容

    このリクエストボディとして送信される multipart/form-data エンコーディングを使用して HTML フォームとしてシリアライズされるオブジェクトを提供します。このパラメータが指定されている場合、明示的に提供されていない限り content-type ヘッダーは multipart/form-data に設定されます。ファイル値は、ファイル名、MIMEタイプ、およびそのコンテンツを含むファイルのようなオブジェクトとして渡すことができます。

  • params Dict[str, str | float | bool] | str (オプション)#

    URLとともに送信されるクエリパラメータ。

  • timeout float (オプション)#

    リクエストのタイムアウト(ミリ秒単位)。デフォルトは 30000(30秒)です。タイムアウトを無効にするには 0 を渡します。

戻り値


get

追加バージョン: v1.16 apiRequestContext.get

HTTP(S) GETリクエストを送信し、そのレスポンスを返します。このメソッドは、コンテキストからリクエストのクッキーを設定し、レスポンスからコンテキストのクッキーを更新します。このメソッドは自動的にリダイレクトを追跡します。

使用法

リクエストパラメータはparamsオプションで設定でき、URL検索パラメータにシリアル化されます。

query_params = {
"isbn": "1234",
"page": "23"
}
api_request_context.get("https://example.com/api/getText", params=query_params)

引数

  • url str#

    ターゲットURL。

  • data str | bytes | Dict (オプション)追加バージョン: v1.26#

    リクエストのPOSTデータを設定できます。データパラメータがオブジェクトの場合、JSON文字列にシリアル化され、明示的に設定されていない限り content-type ヘッダーは application/json に設定されます。それ以外の場合、明示的に設定されていない限り content-type ヘッダーは application/octet-stream に設定されます。

  • fail_on_status_code bool (オプション)#

    2xxおよび3xx以外のレスポンスコードで例外をスローするかどうか。デフォルトでは、すべてのステータスコードでレスポンスオブジェクトが返されます。

  • form Dict[str, str | float | bool] (オプション)追加バージョン: v1.26#

    application/x-www-form-urlencodedエンコーディングを使用してhtmlフォームとしてシリアル化され、このリクエストボディとして送信されるオブジェクトを提供します。このパラメータが指定されている場合、明示的に提供されない限り、content-typeヘッダーはapplication/x-www-form-urlencodedに設定されます。

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

    HTTPヘッダーを設定できます。これらのヘッダーは、取得されたリクエストおよびそれによって開始されたすべてのリダイレクトに適用されます。

  • ignore_https_errors bool (オプション)#

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

  • max_redirects int (オプション)追加バージョン: v1.26#

    自動的にフォローされるリクエストのリダイレクトの最大数。この数を超えるとエラーがスローされます。デフォルトは 20 です。リダイレクトをフォローしない場合は 0 を渡します。

  • max_retries int (オプション)追加バージョン: v1.46#

    ネットワークエラーが再試行される最大回数。現在、ECONNRESET エラーのみが再試行されます。HTTP応答コードに基づく再試行は行われません。制限を超えるとエラーがスローされます。デフォルトは 0 (再試行なし) です。

  • multipart Dict[str, str | float | bool | [ReadStream] | Dict] (オプション)追加バージョン: v1.26#

    • name str

      ファイル名

    • mimeType str

      ファイルタイプ

    • buffer bytes

      ファイル内容

    このリクエストボディとして送信される multipart/form-data エンコーディングを使用して HTML フォームとしてシリアライズされるオブジェクトを提供します。このパラメータが指定されている場合、明示的に提供されていない限り content-type ヘッダーは multipart/form-data に設定されます。ファイル値は、ファイル名、MIMEタイプ、およびそのコンテンツを含むファイルのようなオブジェクトとして渡すことができます。

  • params Dict[str, str | float | bool] | str (オプション)#

    URLとともに送信されるクエリパラメータ。

  • timeout float (オプション)#

    リクエストのタイムアウト(ミリ秒単位)。デフォルトは 30000(30秒)です。タイムアウトを無効にするには 0 を渡します。

戻り値


head

追加バージョン: v1.16 apiRequestContext.head

HTTP(S) HEADリクエストを送信し、そのレスポンスを返します。このメソッドは、コンテキストからリクエストのクッキーを設定し、レスポンスからコンテキストのクッキーを更新します。このメソッドは自動的にリダイレクトを追跡します。

使用法

api_request_context.head(url)
api_request_context.head(url, **kwargs)

引数

  • url str#

    ターゲットURL。

  • data str | bytes | Dict (オプション)追加バージョン: v1.26#

    リクエストのPOSTデータを設定できます。データパラメータがオブジェクトの場合、JSON文字列にシリアル化され、明示的に設定されていない限り content-type ヘッダーは application/json に設定されます。それ以外の場合、明示的に設定されていない限り content-type ヘッダーは application/octet-stream に設定されます。

  • fail_on_status_code bool (オプション)#

    2xxおよび3xx以外のレスポンスコードで例外をスローするかどうか。デフォルトでは、すべてのステータスコードでレスポンスオブジェクトが返されます。

  • form Dict[str, str | float | bool] (オプション)追加バージョン: v1.26#

    application/x-www-form-urlencodedエンコーディングを使用してhtmlフォームとしてシリアル化され、このリクエストボディとして送信されるオブジェクトを提供します。このパラメータが指定されている場合、明示的に提供されない限り、content-typeヘッダーはapplication/x-www-form-urlencodedに設定されます。

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

    HTTPヘッダーを設定できます。これらのヘッダーは、取得されたリクエストおよびそれによって開始されたすべてのリダイレクトに適用されます。

  • ignore_https_errors bool (オプション)#

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

  • max_redirects int (オプション)追加バージョン: v1.26#

    自動的にフォローされるリクエストのリダイレクトの最大数。この数を超えるとエラーがスローされます。デフォルトは 20 です。リダイレクトをフォローしない場合は 0 を渡します。

  • max_retries int (オプション)追加バージョン: v1.46#

    ネットワークエラーが再試行される最大回数。現在、ECONNRESET エラーのみが再試行されます。HTTP応答コードに基づく再試行は行われません。制限を超えるとエラーがスローされます。デフォルトは 0 (再試行なし) です。

  • multipart Dict[str, str | float | bool | [ReadStream] | Dict] (オプション)追加バージョン: v1.26#

    • name str

      ファイル名

    • mimeType str

      ファイルタイプ

    • buffer bytes

      ファイル内容

    このリクエストボディとして送信される multipart/form-data エンコーディングを使用して HTML フォームとしてシリアライズされるオブジェクトを提供します。このパラメータが指定されている場合、明示的に提供されていない限り content-type ヘッダーは multipart/form-data に設定されます。ファイル値は、ファイル名、MIMEタイプ、およびそのコンテンツを含むファイルのようなオブジェクトとして渡すことができます。

  • params Dict[str, str | float | bool] | str (オプション)#

    URLとともに送信されるクエリパラメータ。

  • timeout float (オプション)#

    リクエストのタイムアウト(ミリ秒単位)。デフォルトは 30000(30秒)です。タイムアウトを無効にするには 0 を渡します。

戻り値


patch

追加バージョン: v1.16 apiRequestContext.patch

HTTP(S) PATCHリクエストを送信し、そのレスポンスを返します。このメソッドは、コンテキストからリクエストのクッキーを設定し、レスポンスからコンテキストのクッキーを更新します。このメソッドは自動的にリダイレクトを追跡します。

使用法

api_request_context.patch(url)
api_request_context.patch(url, **kwargs)

引数

  • url str#

    ターゲットURL。

  • data str | bytes | Dict (オプション)#

    リクエストのPOSTデータを設定できます。データパラメータがオブジェクトの場合、JSON文字列にシリアル化され、明示的に設定されていない限り content-type ヘッダーは application/json に設定されます。それ以外の場合、明示的に設定されていない限り content-type ヘッダーは application/octet-stream に設定されます。

  • fail_on_status_code bool (オプション)#

    2xxおよび3xx以外のレスポンスコードで例外をスローするかどうか。デフォルトでは、すべてのステータスコードでレスポンスオブジェクトが返されます。

  • form Dict[str, str | float | bool] (オプション)#

    application/x-www-form-urlencodedエンコーディングを使用してhtmlフォームとしてシリアル化され、このリクエストボディとして送信されるオブジェクトを提供します。このパラメータが指定されている場合、明示的に提供されない限り、content-typeヘッダーはapplication/x-www-form-urlencodedに設定されます。

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

    HTTPヘッダーを設定できます。これらのヘッダーは、取得されたリクエストおよびそれによって開始されたすべてのリダイレクトに適用されます。

  • ignore_https_errors bool (オプション)#

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

  • max_redirects int (オプション)追加バージョン: v1.26#

    自動的にフォローされるリクエストのリダイレクトの最大数。この数を超えるとエラーがスローされます。デフォルトは 20 です。リダイレクトをフォローしない場合は 0 を渡します。

  • max_retries int (オプション)追加バージョン: v1.46#

    ネットワークエラーが再試行される最大回数。現在、ECONNRESET エラーのみが再試行されます。HTTP応答コードに基づく再試行は行われません。制限を超えるとエラーがスローされます。デフォルトは 0 (再試行なし) です。

  • multipart Dict[str, str | float | bool | [ReadStream] | Dict] (オプション)#

    • name str

      ファイル名

    • mimeType str

      ファイルタイプ

    • buffer bytes

      ファイル内容

    このリクエストボディとして送信される multipart/form-data エンコーディングを使用して HTML フォームとしてシリアライズされるオブジェクトを提供します。このパラメータが指定されている場合、明示的に提供されていない限り content-type ヘッダーは multipart/form-data に設定されます。ファイル値は、ファイル名、MIMEタイプ、およびそのコンテンツを含むファイルのようなオブジェクトとして渡すことができます。

  • params Dict[str, str | float | bool] | str (オプション)#

    URLとともに送信されるクエリパラメータ。

  • timeout float (オプション)#

    リクエストのタイムアウト(ミリ秒単位)。デフォルトは 30000(30秒)です。タイムアウトを無効にするには 0 を渡します。

戻り値


post

追加バージョン: v1.16 apiRequestContext.post

HTTP(S) POSTリクエストを送信し、そのレスポンスを返します。このメソッドは、コンテキストからリクエストのクッキーを設定し、レスポンスからコンテキストのクッキーを更新します。このメソッドは自動的にリダイレクトを追跡します。

使用法

JSONオブジェクトはリクエストに直接渡すことができます。

data = {
"title": "Book Title",
"body": "John Doe",
}
api_request_context.post("https://example.com/api/createBook", data=data)

サーバーにフォームデータを送信するには、formオプションを使用します。その値はapplication/x-www-form-urlencodedエンコーディングでリクエストボディにエンコードされます(ファイルを送信するためにmultipart/form-dataフォームエンコーディングを使用する方法については下記を参照してください)。

formData = {
"title": "Book Title",
"body": "John Doe",
}
api_request_context.post("https://example.com/api/findBook", form=formData)

リクエストボディにファイルを送信する一般的な方法は、multipart/form-data エンコーディングを使用してフォームフィールドとしてアップロードすることです。[FormData] を使用してリクエストボディを構築し、multipart パラメータとしてリクエストに渡します。

api_request_context.post(
"https://example.com/api/uploadScript'",
multipart={
"fileField": {
"name": "f.js",
"mimeType": "text/javascript",
"buffer": b"console.log(2022);",
},
})

引数

  • url str#

    ターゲットURL。

  • data str | bytes | Dict (オプション)#

    リクエストのPOSTデータを設定できます。データパラメータがオブジェクトの場合、JSON文字列にシリアル化され、明示的に設定されていない限り content-type ヘッダーは application/json に設定されます。それ以外の場合、明示的に設定されていない限り content-type ヘッダーは application/octet-stream に設定されます。

  • fail_on_status_code bool (オプション)#

    2xxおよび3xx以外のレスポンスコードで例外をスローするかどうか。デフォルトでは、すべてのステータスコードでレスポンスオブジェクトが返されます。

  • form Dict[str, str | float | bool] (オプション)#

    application/x-www-form-urlencodedエンコーディングを使用してhtmlフォームとしてシリアル化され、このリクエストボディとして送信されるオブジェクトを提供します。このパラメータが指定されている場合、明示的に提供されない限り、content-typeヘッダーはapplication/x-www-form-urlencodedに設定されます。

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

    HTTPヘッダーを設定できます。これらのヘッダーは、取得されたリクエストおよびそれによって開始されたすべてのリダイレクトに適用されます。

  • ignore_https_errors bool (オプション)#

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

  • max_redirects int (オプション)追加バージョン: v1.26#

    自動的にフォローされるリクエストのリダイレクトの最大数。この数を超えるとエラーがスローされます。デフォルトは 20 です。リダイレクトをフォローしない場合は 0 を渡します。

  • max_retries int (オプション)追加バージョン: v1.46#

    ネットワークエラーが再試行される最大回数。現在、ECONNRESET エラーのみが再試行されます。HTTP応答コードに基づく再試行は行われません。制限を超えるとエラーがスローされます。デフォルトは 0 (再試行なし) です。

  • multipart Dict[str, str | float | bool | [ReadStream] | Dict] (オプション)#

    • name str

      ファイル名

    • mimeType str

      ファイルタイプ

    • buffer bytes

      ファイル内容

    このリクエストボディとして送信される multipart/form-data エンコーディングを使用して HTML フォームとしてシリアライズされるオブジェクトを提供します。このパラメータが指定されている場合、明示的に提供されていない限り content-type ヘッダーは multipart/form-data に設定されます。ファイル値は、ファイル名、MIMEタイプ、およびそのコンテンツを含むファイルのようなオブジェクトとして渡すことができます。

  • params Dict[str, str | float | bool] | str (オプション)#

    URLとともに送信されるクエリパラメータ。

  • timeout float (オプション)#

    リクエストのタイムアウト(ミリ秒単位)。デフォルトは 30000(30秒)です。タイムアウトを無効にするには 0 を渡します。

戻り値


put

追加バージョン: v1.16 apiRequestContext.put

HTTP(S) PUTリクエストを送信し、そのレスポンスを返します。このメソッドは、コンテキストからリクエストのクッキーを設定し、レスポンスからコンテキストのクッキーを更新します。このメソッドは自動的にリダイレクトを追跡します。

使用法

api_request_context.put(url)
api_request_context.put(url, **kwargs)

引数

  • url str#

    ターゲットURL。

  • data str | bytes | Dict (オプション)#

    リクエストのPOSTデータを設定できます。データパラメータがオブジェクトの場合、JSON文字列にシリアル化され、明示的に設定されていない限り content-type ヘッダーは application/json に設定されます。それ以外の場合、明示的に設定されていない限り content-type ヘッダーは application/octet-stream に設定されます。

  • fail_on_status_code bool (オプション)#

    2xxおよび3xx以外のレスポンスコードで例外をスローするかどうか。デフォルトでは、すべてのステータスコードでレスポンスオブジェクトが返されます。

  • form Dict[str, str | float | bool] (オプション)#

    application/x-www-form-urlencodedエンコーディングを使用してhtmlフォームとしてシリアル化され、このリクエストボディとして送信されるオブジェクトを提供します。このパラメータが指定されている場合、明示的に提供されない限り、content-typeヘッダーはapplication/x-www-form-urlencodedに設定されます。

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

    HTTPヘッダーを設定できます。これらのヘッダーは、取得されたリクエストおよびそれによって開始されたすべてのリダイレクトに適用されます。

  • ignore_https_errors bool (オプション)#

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

  • max_redirects int (オプション)追加バージョン: v1.26#

    自動的にフォローされるリクエストのリダイレクトの最大数。この数を超えるとエラーがスローされます。デフォルトは 20 です。リダイレクトをフォローしない場合は 0 を渡します。

  • max_retries int (オプション)追加バージョン: v1.46#

    ネットワークエラーが再試行される最大回数。現在、ECONNRESET エラーのみが再試行されます。HTTP応答コードに基づく再試行は行われません。制限を超えるとエラーがスローされます。デフォルトは 0 (再試行なし) です。

  • multipart Dict[str, str | float | bool | [ReadStream] | Dict] (オプション)#

    • name str

      ファイル名

    • mimeType str

      ファイルタイプ

    • buffer bytes

      ファイル内容

    このリクエストボディとして送信される multipart/form-data エンコーディングを使用して HTML フォームとしてシリアライズされるオブジェクトを提供します。このパラメータが指定されている場合、明示的に提供されていない限り content-type ヘッダーは multipart/form-data に設定されます。ファイル値は、ファイル名、MIMEタイプ、およびそのコンテンツを含むファイルのようなオブジェクトとして渡すことができます。

  • params Dict[str, str | float | bool] | str (オプション)#

    URLとともに送信されるクエリパラメータ。

  • timeout float (オプション)#

    リクエストのタイムアウト(ミリ秒単位)。デフォルトは 30000(30秒)です。タイムアウトを無効にするには 0 を渡します。

戻り値


storage_state

追加バージョン: v1.16 apiRequestContext.storage_state

このリクエストコンテキストのストレージ状態を返します。コンストラクタに渡された場合、現在のクッキーとローカルストレージのスナップショットが含まれます。

使用法

api_request_context.storage_state()
api_request_context.storage_state(**kwargs)

引数

  • indexed_db bool (オプション)追加バージョン: v1.51#

    ストレージ状態のスナップショットにIndexedDBを含めるには、trueに設定します。

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

    ストレージの状態を保存するファイルパス。 path が相対パスの場合、現在の作業ディレクトリを基準に解決されます。パスが提供されない場合でもストレージの状態は返されますが、ディスクには保存されません。

戻り値