神様は有休消化中です。

Unity関連の技術ネタを書いてます。

【Rails】feedzirraでRSSを取得してみる

feedzirraでRSSを取得してみる

feedzirraでRSSを取得しようとして、つまらないところでハマったのでメモ。

まずは、gemfileにfeedzirraを登録。
ネットで調べると以下のように登録するとのことで、追加。

vi Gemfile
gem 'feedzirra'

んで、いつもの

bandle install

config/application.rbに以下を追加

vi application.rb
class Application < Rails::Application
  config.autoload_paths += %W(#{config.root}/lib)
end

lib/tasks内に以下のファイルを作成。

vi update_feed.rb
class Tasks::UpdateFeed
 
  def self.getrss
    #RSSを取得する
    require 'feedzirra'
    url = ‘http://www.nextsoft.jp/feed/'
    feed = Feedzirra::Feed.fetch_and_parse(url)
  end

end

んで、実行!
・・・・すると以下のエラーが出てくる。なんじゃいこりゃ。

/Users/hoge/.rbenv/versions/2.0.0-p598/lib/ruby/gems/2.0.0/gems/feedzirra-0.8.0/lib/feedzirra.rb:2:in `<top (required)>': This project has been renamed Feedjira, find out more at feedjira.com. (RuntimeError)
from /Users/hoge/.rbenv/versions/2.0.0-p598/lib/ruby/gems/2.0.0/gems/bundler-1.7.12/lib/bundler/runtime.rb:76:in `require'
from /Users/hoge/.rbenv/versions/2.0.0-p598/lib/ruby/gems/2.0.0/gems/bundler-1.7.12/lib/bundler/runtime.rb:76:in `block (2 levels) in require'
・・・

読んでみると、どうやらfeedzirraの名前が変わってるっぽい。

This project has been renamed Feedjira, find out more at feedjira.com. 

うーん、feedjiraに変えればよろしいのか・・・?

以下のように試す。

vi Gemfile
gem 'feedjira'
bandle install
vi update_feed.rb
class Tasks::UpdateFeed
 
  def self.getrss
    #RSSを取得する
    require 'feedjira'
    url = ‘http://www.nextsoft.jp/feed/'
    feed = Feedjira::Feed.fetch_and_parse(url)
  end

end

うまくいった。
というわけで、feedzirraを使うときはfeedjiraと読み替えましょう。