hakeの日記

Windows環境でプログラミングの勉強をしています。

WatirによるIE操作

Watirというツールを知りました。Windows上でIEの操作を自動化させるものみたいです。
はてなへログインして日記編集の画面までいくスクリプトを書いてみましたけど、そのまんまですね。非常に簡単。
このスクリプトではログインした後の画面の切り替わりに時間がかかったのでsleepを入れましたけどもっとちゃんとした方法がありそうですね。

    • とりあえず切り替り後のページタイトルが取得できたあとIE.waitを実施すると動きました。IE.waitだけでも動きそうですが次の動作のリンク先がないというエラーになってしまいました。
require 'rubygems'
require 'watir'

USER = 'hake'
PASSWORD = '*****'

# このページを表示
ie = Watir::IE.start("http://d.hatena.ne.jp/hake/")

# ログイン画面へ移行、ログインする
ie.link(:text, "ログイン").click
ie.text_field(:name, 'name').set(USER)
ie.text_field(:name, 'password').set(PASSWORD)
ie.button(:value,'送信する').click

# sleep(2) # もっと良い方法がありそう
# このようにしてみた
nil while(ie.title != 'はけの徒然日記')
ie.wait()

# 「日記を書く」をクリック
ie.link(:id, "editlink").click