Seleniumからexecute_scriptを呼び出すことで、seleniumのメソッドを使わずに、DevToolsだけで動きが確認できる。タイトルはSeleniumと書いてるが、Rubyのchrome_remoteやPythonのPyChromeDevToolsでもJSは素通しで動かせる。
その際にちょっとした便利なJSを紹介。
(徐々に増やす予定)
画面遷移せずにHTML(or JSONを取得したい)
await fetch('/').then(res => res.text());
今開いてる画面のHTMLならpage_sourceメソッドでいい。ただそれだと画面レンダリングしちゃう。レスポンスBODYをそのままもらいたいならそういうJSを書けばいい。
レスポンスヘッダーを知りたい
Array.from(await fetch('/').then(res => res.headers.entries()));
レスポンスヘッダが配列の配列として帰ってくる。