Playwright CLI ストレージ状態の使用法: ログイン状態の保存、Cookie とローカル ストレージの読み取り

この記事では、公式のストレージ状態リファレンス ドキュメントに基づいて、Playwright CLI でのストレージ状態、Cookie、localStorage、sessionStorage、および IndexedDB に関する一般的なコマンドと簡潔な手順をまとめています。

ブラウザの自動化に Playwright CLI を使用する場合、storage state は基本的に最もよく使用される機能の 1 つです。その機能は非常に直接的です。現在のログイン状態とローカル状態をブラウザに保存し、後でそれを再利用して、毎回再度ログインする必要がなくなります。

01 現在の保存状態を保存します

最も一般的なシナリオは、一度ログインしてから現在のステータスをファイルにエクスポートすることです。

1
playwright-cli storage-state save auth.json

このコマンドは、現在のブラウザー コンテキストの状態を auth.json に保存します。後でログイン状態を再利用する場合は、通常はこのステップから開始します。

02 既存のストレージ状態をロードします

状態ファイルをすでに作成している場合は、起動時にそれを直接ロードできます。

1
playwright-cli --storage-state auth.json

auth.json の状態でブラウザー コンテキストを開始します。一般的な使用法は、繰り返しのログインをスキップして、ログインした環境に直接入ることです。

現在のセッションにどのような Cookie があるかを確認したいだけの場合は、それらを直接表示できます。

1
playwright-cli cookies

このコマンドは、現在のコンテキスト内の Cookie をリストします。ログイン状態が存在するかどうか、Cookie が正常に書き込まれたかどうかを確認するのに適しています。

04 クッキーを設定する

すでに Cookie データがある場合は、直接書き込むこともできます。

1
playwright-cli cookies set '[{"name":"session","value":"abc","domain":"example.com","path":"/"}]'

この使用法は、認証のデバッグ、特定のセッションの再現、またはスクリプトの前に Cookie 条件を手動で挿入する場合に適しています。

05 ローカルストレージの読み取り

一部のサイトのログイン ステータスまたはフロントエンド ステータスは、Cookie だけでなく localStorage にも保存されます。

1
playwright-cli local-storage

このコマンドは、現在のページの localStorage コンテンツを表示するために使用されます。この手順は、「ログインしているように見えますが、ページの動作が間違っている」というトラブルシューティングを行う場合に役立ちます。

06 ローカルストレージへの書き込み

フロントエンドのステータスをシミュレートする必要がある場合は、それを直接設定することもできます。

1
playwright-cli local-storage set token abc123

指定されたキー値を localStorage に書き込みます。一般的な用途は、トークン、基本設定、または一部のフロントエンド スイッチを挿入することです。

07 セッションストレージの読み取り

sessionStorage は、現在のセッションの一時的なステータスを表示するのに適しています。

1
playwright-cli session-storage

このコマンドは、現在のページの sessionStorage を出力します。特定のページ ロジックがワンタイム セッション データに依存している場合は、ここから確認できます。

08 セッションストレージへの書き込み

必要に応じて、sessionStorage を手動で設定することもできます。

1
playwright-cli session-storage set key value

これは、一時的な状態に依存する特定のページ動作を再現したり、初期化ステップに必要なフィールドを入力したりするのに適しています。

09 IndexedDB の表示

より重い Web アプリケーションの場合、本当に重要なデータは IndexedDB にある可能性があります。

1
playwright-cli indexed-db

このコマンドは、現在のページの IndexedDB データを表示するために使用されます。複雑な単一ページ アプリケーション、オフライン キャッシュ、またはローカル データベース スタイルの状態に遭遇した場合は、最初にここを確認できます。

10 最も実用的なワークフローの 1 つ

ログイン状態を安定して再利用したいだけの場合、最も単純なプロセスは通常次のようになります。

  1. まずサイトを開いて手動でログインを完了します。
  2. 次のコマンドを実行してステータスを保存します。
1
playwright-cli storage-state save auth.json
  1. 後続の実行中に直接ロードします。
1
playwright-cli --storage-state auth.json

ロード後もページに異常がある場合は、引き続き次の確認を行ってください。

  • playwright-cli cookies
  • playwright-cli local-storage
  • playwright-cli session-storage
  • playwright-cli indexed-db

このシーケンスで「状態が完全に復元されていない」という問題のほとんどはすでにカバーできます。

11 使用上の注意点

注目すべき点は次の 3 つです。

  • storage state ファイルは本質的に機密データであり、ログイン Cookie またはトークンが含まれる場合があります。安易に倉庫に提出しないでください。
  • 単に Cookie を復元するだけでは必ずしも十分ではなく、多くの最新のサイトは localStoragesessionStorage、または IndexedDB にも依存しています。
  • ステータス ファイルは永続的に有効ではないため、通常、Cookie の有効期限が切れた後、アカウントが変更された後、または環境が切り替わった後に再生成する必要があります。

12 簡単なまとめ

一文しか覚えていない場合:

**Playwright CLIstorage state は、ブラウザの現在の状態を保存し、後続のタスクで引き続き使用します。 **

実際のトラブルシューティングでは、最も一般的に使用されるコマンドのセットは次のとおりです。

1
2
3
4
5
6
playwright-cli storage-state save auth.json
playwright-cli --storage-state auth.json
playwright-cli cookies
playwright-cli local-storage
playwright-cli session-storage
playwright-cli indexed-db

最初に保存してからロードします。そうでない場合は、Cookie とさまざまなローカル ストレージ層を確認してください。これは基本的に、このリファレンス ドキュメントの最も実践的な部分です。

参考リンク

记录并分享
Hugo で構築されています。
テーマ StackJimmy によって設計されています。