ブックマーク / blog.livedoor.jp/maru_tak (2)

  • お題目うぉっち:WatirでIEを自動操縦

    2008年03月09日 WatirでIEを自動操縦 Webページのスクレイピングには今まで Mechanize を使っていたのだが、IEを自動操縦する Watir はそれ以上に便利だと思った。 Watirのチートシート #! ruby -Ks require 'watir' ie = Watir::IE.new ie.goto('http://reader.livedoor.com/reader/') ←ページ遷移 ie.link(:text, /ガイド/).click ← リンク文言を正規表現で検索してクリック puts ie.text ← ソースを表示 コードを実行すると、自動的にIEが立ち上がって無人操作を開始する。 フォームに記入する場合についても、全般的に書き方がMechanizeよりわかりやすいと思う。何よりもIEが文字コードの自動判定をしてくれるので、リンクやフォーム部品を探

  • HpricotからNokogiriに乗り換え:お題目うぉっち

    2009年07月31日 HpricotからNokogiriに乗り換え スクレイピングを行うためにHpricotを使ったところ、どうやってもbuilder.rbというモジュールで segmentation fault が出てしまうという事態に遭遇した。Hpricot を最新のバージョンである 0.8.1 に上げたが変化なし。 調べてみたところ、これはRuby体のバグが原因であり、「配列のサイズが途中で変わると起きる」らしいことが分かった(るびまの記事)。が、Hpricot内部の話なので、こちらではどうしようもない。 そこで、最近よく名前を耳にする、Hpricot互換の Nokogiri に乗り換えてみた。HpricotとNokogiriは使い方は非常に似ているのだが、まったく違いがないわけではないので、下記の点を変更した。 ■ require すべきものが当然変わるrequire 'hpr

  • 1