kidoOooOoooOOom

IT系で開発やってます

phantom.jsとかいうやつ

テストの事前準備としてブラウザでの認証情報が必要な場合、phantom.jsを使ってCUIからブラウザ操作をして認証情報を取得していた。
基本的な操作はこんな感じ。

●require('webpage').create()
URL指定でページを表示するためのpageオブジェクトを作成します。

●page.open()
WEBページのURLを指定してページを表示します。

●page.evaluate()
page.openでページを表示した後にそのページ内で任意のJavaScriptを実行します。

●page.sendEvent()
domの位置を直接指定してClickイベントなどを発火させることができます。
イベントの発火はこのsendEventでのみ可能となっており、page.evaluateメソッドを使ってページ内でdispatchEventなどを実行してもイベントを発火させることはできません。

●page.render()
パスを指定してページのキャプチャを撮ります。
pdf,jpeg,pngに対応しており、パスの拡張子指定によって出力形式が変わります。