我正在尝试使用Instagram Business Discovery API从某个公共页面获取发布统计信息。
以浴和身体工作(https://www.instagram.com/bathandbodyworks)为例。
GET graph.facebook.com
17895695668004550?fields=business_discovery.username(bathandbodyworks){followers_count,media_count,media{timestamp,like_count,comments_count}}
这会给我以下回应:
{
"business_discovery": {
"followers_count": 3526159,
"media_count": 3536,
"media": {
"data": [
{
"timestamp": "2018-05-16T20:00:54+0000",
"like_count": 28925,
"comments_count": 530,
"id": "17917935010179826"
},
(24 posts data omitted...)
"paging": {
"cursors": {
"after": "QVFIUlBNak5fNTc3eThl..." (a very long string)
}
}
}
现在,这只给了我最近的25个帖子,我认为这是Facebook设定的每个请求的限制。
如果我想加载下25个帖子,我该怎么办?
在YouTube Data API中,每个请求的限制为50,但是" nextPageToken"用于加载下一个50帖子。我认为这是同样的情况吗?
我也在this Facebook API document中发现我可以添加一个游标字符串,如:&after=QVFIUlBNak5fNTc3eThl...
,
但这不起作用。
任何建议都将不胜感激,谢谢!
答案 0 :(得分:6)
与business_disco的分页与Facebook略有不同 分页。
没有next
和previous
网址。
您需要添加after
光标作为此示例:
https://graph.facebook.com/v2.12/xxxx?fields=business_discovery.username(jacqehoward){id,name,username,website,profile_picture_url,biography,followers_count,media_count,media.after(QVFIUlZA5aTR5NTE4Y24tNW90VGZAPTVBtb0NpOEFPTlNLeklmVTEtUDZAfVnE0YnBhUVNOQ3BDaktzNHJBTENhTmVYLUV2SGJPZAVAxZA09hQ2NhUGdnUGFjMTNn){id,caption,comments_count,like_count,media_type,media_url,owner,timestamp}}
注意:
media.after(after_cursor){media_fields}
如果您希望通过business_discovery
分页到最后,则必须添加after
游标,直到只有previous
光标的响应为止。这是你到达第一篇文章的标记。