如何从脸书用户新闻推送中获取特定日期的所有帖子



我想建立一个网站,向用户展示他的朋友在facebook上发布的所有视频,我知道如何为最近的帖子拉新闻源,但我不知道如何拉特定日期的所有帖子(从一天开始的所有帖子)。

我使用这个FQL调用来提取最近的视频:

SELECT post_id, source_id, actor_id, target_id, message, attachment, permalink, type FROM stream 
WHERE source_id IN (SELECT target_id FROM connection WHERE source_id=me() AND is_following=1) 
AND is_hidden = 0 
AND type = 80 
AND strpos(attachment.href, "youtu") >= 0

但我不知道如何把一天开始到结束的所有视频都拉出来。。。

编辑:

现在我的代码中有你的答案:

@feed = Koala::Facebook::API.new(current_user.token)
to = Time.now.to_i
yest = 1.day.ago.to_i
@feed.fql_query("SELECT post_id, actor_id, target_id, message, likes FROM stream WHERE source_id = me() AND created_time > #{yest} AND created_time < #{to} AND type = 80 
AND strpos(attachment.href, "youtu") >= 0")

feed变量返回的是#而不是json,我如何从这个变量中获得json?

使用FQL可能是您的最佳选择。您需要用户的read_stream权限。

您可以使用考拉宝石并运行以下操作:

require 'koala'
@graph = Koala::Facebook::API.new("YOUR_ACCESS_TOKEN")
@graph.fql_query("SELECT post_id, actor_id, target_id, message FROM stream WHERE source_id = me() AND created_time > START_TIME AND created_time < END_TIME LIMIT 10")

START_TIMEEND_TIME都应该是unix时间戳。在您的情况下,代表一天的开始和结束。

最新更新