我正在使用FQL来运行FB Likes的查询,但是分页看起来似乎很奇怪。第一个查询运行以获取最多400个like_urls,如下所示:
SELECT url from url_like where user_id='FB_USER_ID' LIMIT 0, 400
它在此示例中返回大约25个网址的列表。问题是我有这个循环以防万一它超过400.在这个循环中,查询可能再次运行如下:
SELECT url from url_like where user_id='FB_USER_ID' LIMIT 25, 400
结果是相同的25个URL ...不应该限制25,400忽略每个FQL的前25个?我用来打破循环的机制是,如果返回的结果总计为0,那么这当前将我的查询放入循环中,它只是超时。
有关FDB FQL限制如何工作的任何指针或信息,或LIMIT不适用于like_url的原因将不胜感激。
我所拥有的当前查询的前5次迭代的示例(尽管URL列表显示相同,但结果中的数字甚至显示不一致)
02-26-2014 08:03:33 - **** Running pass 1 to get likes for FB UID FB_USER_ID ****
02-26-2014 08:03:33 - **** Likes pass 1 URL Query: SELECT url from url_like where user_id=FB_USER_ID ORDER BY url ASC LIMIT 0, 400 ****
02-26-2014 08:03:33 - **** pass 1 had 25 URLs for FB UID FB_USER_ID ****
02-26-2014 08:03:33 - **** Running pass 2 to get likes for FB UID FB_USER_ID ****
02-26-2014 08:03:33 - **** Likes pass 2 URL Query: SELECT url from url_like where user_id=FB_USER_ID ORDER BY url ASC LIMIT 25, 400 ****
02-26-2014 08:03:33 - **** pass 2 had 22 URLs for FB UID FB_USER_ID ****
02-26-2014 08:03:33 - **** Running pass 3 to get likes for FB UID FB_USER_ID ****
02-26-2014 08:03:33 - **** Likes pass 3 URL Query: SELECT url from url_like where user_id=FB_USER_ID ORDER BY url ASC LIMIT 47, 400 ****
02-26-2014 08:03:33 - **** pass 3 had 20 URLs for FB UID FB_USER_ID ****
02-26-2014 08:03:33 - **** Running pass 4 to get likes for FB UID FB_USER_ID ****
02-26-2014 08:03:33 - **** Likes pass 4 URL Query: SELECT url from url_like where user_id=FB_USER_ID ORDER BY url ASC LIMIT 67, 400 ****
02-26-2014 08:03:33 - **** pass 4 had 19 URLs for FB UID FB_USER_ID ****
02-26-2014 08:03:33 - **** Running pass 5 to get likes for FB UID FB_USER_ID ****
02-26-2014 08:03:33 - **** Likes pass 5 URL Query: SELECT url from url_like where user_id=FB_USER_ID ORDER BY url ASC LIMIT 86, 400 ****
02-26-2014 08:03:33 - **** pass 5 had 19 URLs for FB UID FB_USER_ID ****
答案 0 :(得分:1)
FQL只显示你可以看到的网址..例如,我有10个喜欢,但前3个因某些原因被隐藏:
[0] Hidden
[1] Hidden
[2] Hidden
[3] Public
[4] Public
...
[9] Public
此FQL查询
SELECT url from url_like where user_id='FB_USER_ID' LIMIT 0, 10
只会返回7条记录(公众)..同样会发生
SELECT url from url_like where user_id='FB_USER_ID' LIMIT 3, 10
或
SELECT url from url_like where user_id='FB_USER_ID' LIMIT 100
解决方案是计算所有喜欢的内容,这样你就知道你必须要记录多少条记录......但是 Facebook FQL没有实现'计数'功能。
所以这个问题没有真正解决方案