RSS阅读器中的热门新闻

时间:2010-05-28 09:52:33

标签: ruby-on-rails ruby web-applications rss

您如何知道RSS Feed聚合器NewsNow中的热门话题或热门话题是什么?

你能解释一下吗?

我是Ruby on Rails的新手。我想在Ruby on Rails中构建一个RSS阅读器。你能给我一些很好的教程或链接吗?

由于

高塔姆

3 个答案:

答案 0 :(得分:1)

宝石feedzirra是一个很好看的宝石。

答案 1 :(得分:1)

参考热门话题,热门故事等的“热火”通常是随着时间推移计算​​的受欢迎程度。您可能希望为每个值应用一些修饰符,但让我们简单地说它是total reads / age in minutes

在1分钟内读取200次的内容比在15分钟内读取2000次的内容更热。

如何实现这一点是一个不同的问题。在没有将所有数据都拉出来的情况下,您无法真正使用数据库,因此最好将统计信息(即主键,发布时间和总读取数)保存在本地快速访问存储(memcache等)中,以便您可以将它们拉出来,根据您需要的数据进行排序,并将其缓存5-10分钟。

您还可以通过将排名限制为在特定时间段内发布的新闻项目(取决于您的新闻吞吐量)来缩短处理时间。

答案 2 :(得分:1)

由于我无法从您的问题中判断您是否正在构建列出yoru网站热门话题的RSS源或确定其他网站热门话题的RSS阅读器,我将回答这两个问题:

有很多方法可以解释热门话题是什么。在这个答案中,考虑将hot_topic设置为具有最多观看次数的新闻帖子(您可以构建自己的流行度方法并使其更复杂,例如每分钟的观看次数,但这是我将为您留下的练习):

如果您正在尝试构建 RSS Feed ,列出您的网站中最热门的主题,您可以:

  • 在模型中添加一列,以保存其拥有的“视图”数量。您可以跟踪它有多少视图,例如,每次观看帖子时增加值(post.views + = 1),然后保存它(post.save)。
  • 在控制器中为hot_topics创建操作后,您只需按视图订阅帖子即可。

这是一种呈现具有最多视图的RSS的简单方法。


现在,如果您正在尝试构建自己的 RSS阅读器,以便从其他网站上阅读热门帖子或尝试确定不同网站的受欢迎程度,那么您可以:

  • 从该特定网站下载RSS feed hot_topics(如新闻)
  • 抓取不同的网站,并比较哪些网站都很受欢迎,并将其分类给您的读者

我希望这会有所帮助。