読者です 読者をやめる 読者になる 読者になる

RubyでHTMLスクレイピング Oga

GitHub - YorickPeterse/oga: Oga is an XML/HTML parser written in Ruby.

以前はTutorials - Nokogiri 鋸を使っていましたが、依存関係をなくそう : Rubyアプリ・Gemの開発者への提言 | プログラミング | POSTDこちらを読んだら、最近はOgaがよさそう。

サクッとインストール

$ gem install oga

スクレイピングとは違いますが、RSSをプルパーサーでみるのはこんな感じで

require 'Oga'
require 'open-uri'
rss = open("http://www.amazon.co.jp/rss/bestsellers/books")
parser = Oga::XML::PullParser.new(rss)
parser.parse do |node|
   parser.on(:text) do  
     puts node.text unless node.text.strip.empty?    
   end    
end  

結果

Amazon.co.jp: 本のベストセラー
http://www.amazon.co.jp/gp/bestsellers/books/ref=pd_zg_rss_ts_b_books_c
Fri, 4 Mar 2016 12:47:14 GMT
Fri, 4 Mar 2016 12:47:14 GMT
60
Amazon Community RSS 2.0
ja-jp
Copyright 2016, Amazon.com
...

こちらに参考にさせていただきました。
Ogaってゆー新しいXML/HTMLパーサーについて - Qiita