【问题标题】:How to get ALL likes for a given media-id如何获得给定媒体 ID 的所有喜欢
【发布时间】:2015-03-15 08:23:26
【问题描述】:

我正在尝试遍历给定 {media_id} 的每个赞的用户 ID

https://api.instagram.com/v1/media/{media-id}/likes?access_token=ACCESS-TOKEN

正在返回类似这样的内容(大约 300 个赞的数据数组)

{
    "data": [{
        "username": "jack",
        "first_name": "Jack",
        "last_name": "Dorsey",
        "type": "user",
        "id": "66"
    },
    {
        "username": "sammyjack",
        "first_name": "Sammy",
        "last_name": "Jack",
        "type": "user",
        "id": "29648"
    }]
}

问题在于它不返回 ALL 喜欢或任何分页功能。

对于给定的 {media_ID},是否有任何解决方法来获得 所有喜欢

【问题讨论】:

    标签: instagram instagram-api


    【解决方案1】:

    您正在使用正确的 API 端点来获取媒体点赞,但是此端点有一个限制。每个媒体最多只能返回 100-120 个赞,没有分页。

    很遗憾,没有解决方法!

    同样的限制也适用于 cmets 端点。

    【讨论】:

    • 没有分页还是这样吗?文档只说获取喜欢此媒体的用户列表。它在哪里说明了这个最大值 120?我的沙盒应用中只有 3 个测试用户,所以我还没有找到。
    【解决方案2】:

    检查this Python 库。

    那你就可以使用我做的这个示例代码了;但是,它只会获得最近的 1000 个赞。

    from InstagramAPI import InstagramAPI
    
    likes_list = []
    
    def get_likes_list(username):
    
        API.searchUsername(username) #Gets most recent post from user
        info = API.LastJson
        username_id = info['user']['pk']
        user_posts = API.getUserFeed(username_id)
        info = API.LastJson
        media_id = info['items'][0]['id']
    
        API.getMediaLikers(media_id)
        f = API.LastJson['users']
        for x in f:
            likes_list.append(x['username'])
    
    get_likes_list("tailopez")
    print(likes_list)
    

    【讨论】:

      猜你喜欢
      • 2013-04-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多