【发布时间】:2014-02-19 14:41:28
【问题描述】:
所以我有以下 Nokogiri rake 任务:
require 'nokogiri'
require 'open-uri'
namespace :rss do
desc "Fetch rss feed"
task :fetch => :environment do
doc = Nokogiri::XML(open("http://www.themusicvoid.com/feed"))
@info = doc.xpath('//item').take(5).map do |i|
News.create(:title => i.xpath('title').inner_text)
end
end
end
这让我得到了每个单独的“项目”的标题...但我还希望每个数据库条目都包含一个名为“站点”的字符串中的频道名称。
比如:
News.create(:title => i.xpath('title').inner_text, :site => i.xpath('channeltitle').inner_text)
我只是完全不确定如何做到这一点。由于频道和项目名称都是“标题”,我不确定如何让 Nokogiri 区分两者。我知道我必须在 xpath 的某处包含“//channel”,但我不完全确定如何让 nokogiri 调用一个“itemtitle”和另一个“channeltitle”。任何帮助将不胜感激。
【问题讨论】:
标签: ruby-on-rails-3.2 rss nokogiri