Instagram API - 获取特定主题标签或位置的所有用户

时间:2015-06-16 21:19:41

标签: instagram instagram-api

我已经开始研究Instagram API了,我想要提取所有使用过特定主题标签或已经在指定位置的用户。

正如文档所说,我可以使用以下方法获取最新用户的标签和位置:

https://api.instagram.com/v1/tags/{tag}/media/recent?access_token={token}

https://api.instagram.com/v1/media/search?lat={latitude}&lng={longitude}&access_token={token}

我最近获得了这些数据(最多7分钟)。我的问题是,是否可以检索所有用户,而不仅仅是最近的?另外,如何获取位置名称的媒体对象,例如" London"?我似乎必须首先获取该位置的位置ID,但文档并未明确如何获取该ID。

1 个答案:

答案 0 :(得分:2)

按标签或位置获取用户

据我所知,通过hashtag或location获取用户数据并不是一个整洁的终点。我认为从标签,位置或地理位置最近的媒体端点获取所有用户的唯一方法是屠杀API并从每个分页响应中查看user数组中每个项目的data对象。那些终点。每个响应中的pagination属性与data处于同一级别,可帮助您执行此操作。

"pagination": { "next_max_tag_id": "1009570282366298753", "deprecation_warning": "next_max_id and min_id are deprecated for this endpoint; use min_tag_id and max_tag_id instead", "next_max_id": "1009570282366298753", "next_min_id": "1009570411710268632", "min_tag_id": "1009570411710268632", "next_url": "https://api.instagram.com/v1/tags/{tag}/media/recent?access_token={access_token}&max_tag_id=1009570282366298753" },

pagination.next_url会在当前响应之后为您提供另一页回复,其中会有一个新的pagination.next_url等等。

您可以在GET网址?count=33中传递其他参数,这会指定您在data数组中获得的对象数量,最多为33个。因此,每个请求可以获得33个结果每个请求默认为20个。

获取位置ID

位置媒体最近端点仅适用于位置ID,但位置ID可以在任何最近媒体端点的location阵列中的对象的data属性中找到。只有当该图像位于地理位置且指定了位置时才会填充该属性,这与Instagram API不同。

使用location search endpoint并搜索结果可能会更容易,直到找到您要查找的位置为止。

https://api.instagram.com/v1/locations/search?lat={latitude}&lng={longitude}&distance={radius_in_meters}&access_token={access_token}