Puppeteer でポップアップ画面を操作の対象とする

Puppeteer

こちらです。読み方は「パピティア」のようです*1*2

ポップアップ画面を操作の対象とする。

page.goto でページを訪れ、その際にポップアップが出てきたとき、このポップアップのボタンを押そうとしても「要素が見つからない」と怒られてしまいます。

このときは以下のような*3方法を用いることで、操作の対象をポップアップ部分に移すことができます。

  const pages = await browser.pages();
  const popup = pages[pages.length - 1];

「ポップアップページは最後に開かれたページである」という事実に基づいています*4

あとはこの popup をレシーバとして各種メソッドを実行すればよいだけです。たとえばスクリーンショットを撮りたい場合は popup.screenshot でよいです。

参考

*1:「パペッティア」と読むのも主流なようです

*2:アクセントは「ィ」に来るのが正確なようです

*3:やや技巧的ですが

*4:ちょっと怖いですが……

Powered by はてなブログ