【Python】Playwrightの .new_page() って何?わかりやすく解説!

B!

PythonでWeb操作を自動化できる強力なライブラリ「Playwright」では、ページを操作する前に必ず「新しいページ(タブ)」を開く必要があります。

そのためによく使われるのが .new_page() というメソッドです。

この記事では、.new_page() がどういう働きをするのか、どんな場面で使うのかを、初心者にもわかりやすく解説します。

.new_page() は何をしている?

Playwrightでは、まず browserbrowser_context を作ったあと、その中で新しいページ(ブラウザのタブのようなもの)を作る必要があります。

このときに使うのが .new_page() です。

「ページを開く=.new_page()」と覚えておくとよいでしょう。

たとえば、次のようなときに使います:

  • Webサイトを開いて情報を取得したいとき
  • 複数ページを並行して操作したいとき
  • 新しいセッション(コンテキスト)内で1つ目のページを開きたいとき

具体例①:単純にページを開いてタイトルを取得する

指定したURLにアクセスし、ページのタイトルを取得します。

コード例

このコードでは:

  • browser.new_page() で新しいページ(タブ)を開く
  • .goto() でそのページにURLを指定してアクセス
  • .title() でページタイトルを取得

という流れになります。

具体例②:複数ページを同時に開いて別々に処理

複数のWebページを独立して操作したい場合、それぞれ .new_page() で開けばOKです。

コード例

このように、複数のページを同時に操作できるのがPlaywrightの強みです。

それぞれの .new_page() で開いたタブが、独立して動作します。

具体例③:.new_context() と組み合わせて完全に分離されたページを作る

.new_page()browser だけでなく、browser_context(=別セッション)でも使えます。

異なるログイン状態を切り分けたいときなどに便利です。

コード例

このように、別セッションごとにページを開くことで、Cookieやログイン状態を完全に分離できます。

まとめ

.new_page() は、Playwrightで新しいページ(タブ)を開くための基本メソッドです。

使い方のポイントは以下の通り:

  • browser.new_page() は、最初のページを開くときに使う
  • .goto() と組み合わせてWebページにアクセスできる
  • 複数ページを同時に扱いたいときは、.new_page() を複数回呼べばOK
  • .new_context().new_page() を使えば、セッションを完全に分けられる

Playwrightを使いこなすうえで、.new_page() は必ず登場する基本機能なので、まずはしっかり使い方を押さえておきましょう。

最新の記事はこちらから