如何获得所有喜欢的给定媒体ID

问题描述 投票:4回答:2

我试图迭代给定{media_id}的每个用户ID

https://api.instagram.com/v1/media/ {媒体ID} /喜欢?=的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"
    }]
}

问题是它不会返回所有喜欢或任何分页功能。

是否有任何解决方法可以获得给定{media_ID}的所有喜欢?

instagram instagram-api
2个回答
8
投票

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

不幸的是没有解决方法!

同样的限制适用于评论端点。


1
投票

检查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)
© www.soinside.com 2019 - 2024. All rights reserved.