2010年3月12日金曜日

Ruby:XML:nokogiri

今までXMLはREXMLで処理してましたが、今日50MBのXMLファイルの処理に延々と待たされ高速なライブラリを探してみました。ここにあるようにnokogirilibxmlを使うとREXMLに比べて50倍以上の高速化が図れそうです。もちろんプログラムは面倒になるでしょうが。

インストールはgemを使って

gem install nokogiri

だけ。

使い方は、例えば
ここに例があります。

require 'nokogiri'

f = File.open("blossom.xml")
doc = Nokogiri::XML(f)
doc.xpath("//character")
f.close

のような感じ。

これで50MBのXMLファイルに耐えられるかどうかはこれから。

0 件のコメント: