我目前正在使用以下示例配置使用Instagram API媒体/搜索端点:
curl -XGET 'https://api.instagram.com/v1/media/search?
lat=1.3058866783157643&lng=103.88191223144531&distance=5000&
min_timestamp=1394615197&max_timestamp=1394615227&
access_token=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
Run Code Online (Sandbox Code Playgroud)
该命令的亮点是:
我获得的结果有以下created_time字段:(我不会把原始结果放在原因上,因为它会占用大量空间.我使用jq(http://stedolan.github.io/jq/)来提取created_time字段).
正如您所看到的那样,在我使用的时间戳参数之外创建了结果(我在后面添加了一个星号).那么,这是媒体搜索API的预期行为吗?或者是因为我的timestamp参数有问题(范围太近也许,注意最大和最小时间戳之间的差异只有30秒).
小智 2
我相信 Instagram 将时间限制四舍五入到最接近的分钟。最小值向下舍入,最大值向上舍入。因此,查询中的时间范围跨越两分钟。所以,你的查询窗口实际上是 120 秒。您必须自己过滤掉多余的内容。
请记住,媒体搜索最多返回 20 个结果。因此,您可能希望针对其跨越的 60 秒窗口中的每一个,将该查询拆分为两个单独的查询。我不认为媒体搜索结果使用分页来显示其他结果。所以你并不真正知道你丢失了多少数据。