« chaos greasemonkey | main | 手に余る »

scRubytをちょこっと触ったけど挫折

どうもDSLが気持ち悪くて。。スンマセン。
dependencyにRubyInlineの3.6.3があるので、普通にgemやるとエラーが起きます。

% sudo gem install scrubyt
% sudo gem install RubyInline --version '= 3.6.3'
% sudo gem uninstall RubyInline --version '=3.6.5'

なんか間違ってる気がするけど気にせず小さなコードを書いてみた。tumblrのfollowings url list。
#!/opt/local/bin/ruby -Ku

require 'rubygems'
require 'scrubyt'
require 'yaml'

login = YAML.load_file('login.yaml')

data = Scrubyt::Extractor.define do
fetch 'http://www.tumblr.com/login'
fill_textfield 'email', login['email']
fill_textfield 'password', login['password']
submit
fetch 'http://www.tumblr.com/following'
url '//ul[@id="following"]/li/a[1]/@href'
end

puts data.to_hash.to_yaml


返り値はそのままじゃ使えないけどto_hashすると普通にアクセスできるハッシュになる。to_xmlな例しかWEBにないのはなんでなんだぜ?

で、気力切れ。
こういうDSLチックな事って自分でも良くやるんだけど、他人のオレオレ言語はなかなかキャズムを超えられない。苦痛。
素直にmechanize + hpricotしようと思う。


(追記)ちょっと修正

トラックバック

このエントリーのトラックバックURL:
http://polog.org/mt-tb.cgi/396

コメント (4)

scRUBYt!関連でリンク貼らせていただきました。やっぱmechanize + hpricotを自分で組み合わせて使え!って話ですよね...

リンクありがとうございます。
そうですね、でもScrubytがちょう使えるシーンを理解してる訳ではないので、ひょっとしたら霧の向こうにスゴい世界があるのかもです。

scRUBYt!はこうやって使いこなすのかぁ……(mechanize使っている人より

いやー、全然使いこなせてないです。。
日記拝見しましたが、following420はすごいですね。別の世界になりそう。

コメントを投稿

Powered by
Movable Type 3.34