0

我正在尝试获取一段时间前发布在公共 Facebook 页面上的链接,例如 2011 年。具体来说,facebook上的阿拉伯语CNN页面:http: //www.facebook.com/CNNArabic

我试过的东西:
1-图形API,这样的查询:
CNNArabic/links?fields=id,name,link,created_time&limit=25&until=2012-05-15

2- FQL
SELECT link_id, url, created_time FROM link WHERE owner = 102581028206 and created_time < 1337085958 LIMIT 100

当该日期或之前的页面上有数据时,两者都会给出一个空数据集。

我注意到的其他事情:
1-如果我将日期更改为 2013-01-17 (即昨天),它可以正常工作。
2-如果我将日期更改为 2012-12-17(大约一个月前),则会返回一个空数据集,但是如果我按照上面第 1 号查询中返回的数据集中的下一页链接,直到我通过这个日期我实际上得到了数据。

我尝试编写一直跟随下一页指针的代码,直到我到达我想要的日期的链接。但是我需要更旧的数据(比如 2011 年),结果集比现在早 2 或 3 个月就用完了,换句话说,没有更多的下一个链接被返回,所以我实际上永远无法获得旧数据。

简而言之:有没有一种方法可以查询在指定日期之前发布在公共页面上的链接?

4

1 回答 1

1

feed在 Graph API 中查询页面的作品:

/102581028206/feed?fields=id,link,name,created_time&limit=25&until=2012-05-15

这将返回所有帖子。应该有一种方法可以使用字段扩展来过滤它,但我无法得到我尝试工作的一些东西。

您可以仅在stream表格上使用 FQL 过滤链接:

SELECT message, attachment, created_time FROM stream WHERE source_id = 102581028206 
    AND created_time < strtotime('2012-05-15') AND type=80 LIMIT 10

链接是type=80.

于 2013-01-18T14:28:43.933 回答