使用RestFB API从页面获取帖子

时间:2014-01-19 10:44:41

标签: java facebook facebook-graph-api restfb

我知道可以从用户墙或用户Feed获取所有帖子 但我无法理解如何使用RestFB在特定的持续时间内从特定页面获取所有帖子,如“可口可乐”。 示例:我希望在日期:2014年1月1日至日期:2014年1月15日之间发布所有帖子

请帮助。

1 个答案:

答案 0 :(得分:0)

使用fetchConnection API(“page_id / posts”)获取页面帖子并不是一件容易的事情,如果你想通过开始和结束时间限制它。最好的方法是使用fql查询。类似代码片段下面的内容有效。

    String query = "select post_id, created_time from stream where "
            + "source_id = " + pageId + " and created_time > " 
            + startTimeInSec + " and created_time < " + endTimeInSec 
            + " limit 500";
    FacebookClient fbClient = new DefaultFacebookClient(accessToken);
    List<FqlPost> fqlPosts = fbClient.executeFqlQuery(query, FqlPost.class);
    for (FqlPost pagePost : fqlPosts) {            
        System.out.println(pagePost);
    }

public static class FqlPost {
    @Facebook("post_id")
    String post_id;

    @Facebook("created_time")
    String created_time;

    @Override
    public String toString() {
        return String.format("%s,%s", post_id, created_time);
    }
}