2013-08-26 71 views
1

我想使用以下URL:https://api.instagram.com/v1/tags/snow/media/recent?access_token=x&min_id=x&max_id=x来获取一些图像及其ID。它工作正常,但我怎么能有更多的图像?我想要成千上万的图像,但我最多只能得到30个左右。我猜它与min_id和max_id有关,但我无法获得更多图像。任何人都可以帮我吗?使用Instagram获取标签API

编辑:我发现Instagram有20个结果限制。有没有使用C#的方法,可以让我获取总共X张图片的旧图片?

回答

2

您将需要在响应中使用分页属性以通过结果进行分页。查找分页对象中的next_url属性,以便调用下一个URL。

您可以向您的呼叫添加一个计数参数,以指定每次呼叫接收的记录数。这个计数参数的最大值为50(或者20),我想我不记得确切的数字。

因此,请返回您的前20条记录,然后调用next_url属性以获取您指定标签的下20个图像。

看在你从Instagram的背面为分页属性的响应:

{ 

    pagination: {"next_max_tag_id": "12345678", "next_max_id": "12345678", 
    "next_min_id": "12345678", 
    "min_tag_id": "12345678", 
    "next_url": "THE URL WILL BE HERE"} 

    data: {} 

} 
+0

非常感谢你,但下一个链接到下20个图像到底是什么? –

+1

您需要在Instagram中回复的回复中查看分页中的next_url属性。我在上面的答案中添加了一个例子。 –

1

使用Instasharp客户端库(https://github.com/InstaSharp/InstaSharp) 你可以做这样的事情:

var tags = new Endpoints.Tags(Config); 
var result = await tags.RecentMultiplePages("csharp", minTagId: null, maxTagId: null, maxPageCount: 3); 

你可以检查结果.RateLimitRemaining属性以确保您不会因垃圾邮件行为而被阻止。

相关问题