我试图将rake任务保存到我的数据库中,以便我可以在我的视图中显示内容。
任务如下:
desc "Fetch Digital Trends"
task :fetch_trends => :environment do
require 'nokogiri'
require 'httparty'
url = "http://www.digitaltrends.com/computing/"
doc = Nokogiri::HTML(open(url))
doc.css(".post").each do |item|
title = item.at_css(".content h3").text
link = item.at_css(".content h3 a")[:href]
puts "#{title} - #{link}"
end
end
是否可以让这个任务每小时运行一次来更新内容?
您可以使用cron。查看https://github.com/javan/whenever (Ruby中的Cron job)
有两种方法。
方法1:写入lib/tasks/name.rake目录
加载文件
执行rake任务
从数据库中加载字符串
使用eval