🖥

Playwright で部分スクロールが出来ない場合の解決策はクリックで

2024/06/27に公開

問題

ページ本体ではなく、ページ内に部分スクロールできる要素がある場合
Playwrightでスクロール処理が出来ない

次のようなものを試してみたが無理だった

await page.mouse.move(0, 0)
await page.mouse.down()
await mouse.wheel(deltaX, deltaY)
await page.keyboard.press('PageDown')

https://playwright.dev/docs/api/class-mouse

https://playwright.dev/docs/api/class-keyboard

解決

スクロールさせたい位置にある要素をクリックすることで、ページ位置がそこまで移動してくれるので、これで暫定解決した

HTML

<div data-testid="wanna-scroll-to">
なにかの要素
</div>

Playwright

await page.getByTestId('wanna-scroll-to').click()

ただし当たり前だがクリック処理も起こってしまい、副作用が出る場合もあるので注意

チャットメンバー募集

何か質問、悩み事、相談などあればLINEオープンチャットもご利用ください。

https://line.me/ti/g2/eEPltQ6Tzh3pYAZV8JXKZqc7PJ6L0rpm573dcQ

プロフィール・経歴

https://github.com/YumaInaura/YumaInaura

公開日時

2024-06-21

Discussion