多用户Twitter提要

时间:2009-09-03 21:43:11

标签: twitter feeds

我正在尝试在我的博客上创建一个小部件,它可以抓取大约20个Twitter帐户并显示每个帐户的最后两个帖子。目前我有一个基于jquery的版本,为每个帐户运行for循环。当然,我最快速度地反对每小时150次请求。我的问题有两个:

是否有更有效的方法来获取此信息?比如说打开一个推特账户,关注我需要的所有用户,然后只参考我账户的朋友方面?

有没有办法缓存JSON响应,所以我没有碰到限制?或者,我是否必须将整个结果写入文件并在达到限制后参考?

我还应该提到我正在研究的平台是Wordpress / LAMP,但我不关心技术最终是什么,我对闪存等开放,以使这项工作。

全部谢谢

3 个答案:

答案 0 :(得分:2)

为了保证每个帐户显示两个帖子,您可能需要单独提取每个Feed。如果一位作者写了100条推文,那么在组合的Feed中就不会轻易达到其他人的推文。

你最好的办法是让一些PHP为你下载推文并暂时将它们缓存在服务器上,而不是在客户端使用jquery和AJAX。如果你可以做PHP,一个相当简单的Wordpress插件就可以做到。 Alex King写了一个Twitter WordPress plugin,可以下载一个帐户,也许你可以修改它以订阅更多。

答案 1 :(得分:0)

是的,您的建议似乎是最佳方式。创建一个额外的Twitter帐户并使用朋友时间轴来聚合这些数据。在Twitter结束时保留所有大规模处理。

请确保将服务器端的结果缓存大约一分钟左右。

答案 2 :(得分:0)

可以使用Twitter的搜索API从一个请求中获取来自多个用户的最新推文。 q参数可以包含多个from:user值。下面是一个使用jQuery的简单示例:

var query  = escape("from:biz OR from:twitter OR from:bob"),
    url = "http://search.twitter.com/search.json?callback=?&q=" + query;

$.getJSON(url, function(data){
  $.each(data.results, function(i, tweet){
    $('body').append("<p>" + tweet.text + " by " + tweet.from_user_name + "</p>");
  });
});