Rubyでjsonを扱ってみようと思うの。 手ごろなところで、googleの検索結果を使ってみようか。
まずは、とりこみ。 まじめにnet/httpとか使ってないけど、ごめんね。
require 'uri'
class String def google_search2(url,referer) browser = getAgent site = url.getSite keyword = URI.escape(self) urlx = 'http://ajax.googleapis.com/ajax/services/search/web?v=1.0&rez=5&q=' + keyword + "%20site:" + site r = [] open("|w3m -header \"Referer: #{referer}\" -dump \"#{urlx}\"","r").each{|x| r[r.length] = x.clone } rx = r.join("") rx end end
refererはちゃんと与えた方がいいわね。理由?悪いけど自分で調べてね。
これでゲットしたのは jsonデータだから、これを解析するの。
jd = JSON.load("もらったデータ") s = jd["responseData"]["results"]
あとは p s してみるとわかると思うけど、sは配列になってるの。 中の改変とか追加も、ハッシュや配列の扱いでいいわ。 じゃあね。
あら、保存はどうしよう?生テキストに戻して保管がいいのかしら?