マイペースにGoogle急上昇ワードを取得してもらった!
RubyでGoogle急上昇ワードを取得するに書いてあるスクリプトをいじってみた。REXMLに詳しいかはわからないけど、XPath大好きなので、XPathを使って書き直した。
わーい、コード書いてもらったよ!社会ネタを書くと詳しい人が色々教えてくれたことはあるけど、技術ネタでは初のレスポンスかもしれない。発言力無いからなぁこのブログ。
doc = REXML::Document.new(ret)
doc.get_elements('/rtt/item').each{|node|
puts node.elements['query'].text()
}
これ!これです!知りたかったのは!なるほど、get_elementsってメソッドを使えばいいのか。そういえばdoc.rootでその次にXPathを指定するメソッドで取れなくて、まぁいいやとりあえず動くメソッドで・・・ということがあったような気がします。そういえば/rttを書いてなかったかも。
ところでXML取得するだけならopen-uriの方がいいんじゃないかと思えてきた。
#!/usr/bin/env ruby require 'rexml/document' require 'open-uri' url = 'http://www.google.co.jp/m/services/trends/get' doc = REXML::Document.new(open(url).read) doc.get_elements('/rtt/item').each {|node| puts node.elements['query'].text() }
というわけで、更に書き直してみた。なんかスッキリした。id:d-kamiさん感謝です。