Facebook用户信息:过去90天内喜欢的其他人的帖子数量

时间:2013-02-26 10:41:33

标签: php facebook facebook-fql

facebook fql和数据挖掘需要帮助

SELECT post_id, source_id, message, created_time 
FROM stream 
WHERE source_id IN 
(
    SELECT target_id FROM connection WHERE source_id=me()
) LIMIT 10

1 个答案:

答案 0 :(得分:1)

如上所述:

  

流表的每个查询都限制在前30天或   50个帖子,以较大者为准,但您可以使用特定时间   create_time等字段以及FQL运算符(例如<或>)   检索更多范围的帖子。   http://developers.facebook.com/docs/reference/fql/stream

根据我的经验,您需要进行多次查询以挤出过去所有可用的帖子。首先,我以最大的Facebook限制进行查询,如下所示:

SELECT post_id, source_id, message, created_time, likes  
FROM stream 
WHERE source_id IN (SELECT target_id FROM connection WHERE source_id=me()) 
LIMIT 5000

(另请注意,我在您的示例中省略的选项中添加了'likes',如果您打算计算喜欢的话,则需要这样做)

然后我解析结果并从上一篇文章中获取created_time值并创建一个新查询作为条件,如下所示:

SELECT post_id, source_id, message, created_time, likes 
FROM stream 
WHERE source_id IN (SELECT target_id FROM connection WHERE source_id=me()) 
AND created_time < 1361472438 
LIMIT 5000

然后,我重复此过程并进行其他查询,直到Facebook返回空结果集。

但即使我做了所有的事情,我过去也不会超过6天。

所以它远远低于Facebook在他们的文档中所说的至少按日期来看,但是按照计算,你似乎得到了50多个帖子。