特定のページを延々リロードしてページ取得にかかった時間を記録するスクリプト書いた
wshでieを起動して、ieに特定のページを延々リロードさせて、各回のページ取得にかかった時間を記録するスクリプト書いた。使った言語はJavaScript。
var uri = WScript.Arguments(0); var ie = WScript.CreateObject("InternetExplorer.Application"); ie.Visible = true; while(ie != null){ startTime = +new Date(); ie.Navigate(uri); while(ie.Busy || ie.readystate != 4){ WScript.Sleep(100); } endTime = +new Date(); WScript.Echo(new Date() + "\t" + (endTime - startTime)); WScript.Sleep(60000); }
ie != nullのとこはとくに意味はない。無限ループさせてるだけ。つうかブラウザのクローズを検知させたかったんだけどやり方が分かんなかった。
こんな感じで使う。
>cscript //nologo navitime.js http://d.hatena.ne.jp/takanoo/ Tue Sep 27 21:22:06 UTC+0900 2011 7339 Tue Sep 27 21:23:07 UTC+0900 2011 1337
ページ取得完了した時刻とかかった時間(ミリ秒)がタブ区切りで標準出力に表示される。止めたくなったらCtrl+Cで止める。
単純に標準出力に出してるので、ファイルとかに書きたいときはリダイレクトしてやる。
>cscript //nologo navitime.js http://d.hatena.ne.jp/takanoo/ >> navitime.log ^C >type navitime.log Tue Sep 27 21:37:56 UTC+0900 2011 452 Tue Sep 27 21:38:56 UTC+0900 2011 216