【问题标题】:Tweepy : How to get user id who liked(fav) the specified tweetTweepy:如何获取喜欢(fav)指定推文的用户ID
【发布时间】:2022-02-16 18:11:44
【问题描述】:

我想知道如何获取喜欢指定推文ID的用户ID列表。

我可以使用“收藏次数”查看推文的收藏次数,但想知道谁喜欢这条推文。

同样的问题 Twitter API - Getting list of users who favorited a status ,这是用python2写的,所以我用python3重写。 但是,它似乎不再起作用了。

def get_user_ids_who_likes(post_id):
    try:
        url = 'https://twitter.com/i/activity/favorited_popup?id=' + str(post_id)
        json_data = urllib.request.urlopen(url).read()
        found_ids = re.findall(r'data-user-id=\\"+\d+', json_data.decode('utf-8'))
        unique_ids = list(set([re.findall(r'\d+', match)[0] for match in found_ids]))
        return unique_ids
    except urllib.error.HTTPError:
        return False

有什么解决办法吗?

【问题讨论】:

    标签: python twitter tweepy


    【解决方案1】:

    使用tweepy.Client.get_liking_users()


    Client.get_liking_users(id, *, expansions, media_fields, place_fields, poll_fields, tweet_fields, user_fields)
    

    允许您获取有关推文喜欢用户的信息。

    参数:

    • id (Union[int, str]) – 推文的推文 ID,用于请求喜欢的用户。
    • expansions (Union[List[str], str])expansions
    • media_fields (Union[List[str], str]) - media_fields
    • place_fields (Union[List[str], str])place_fields
    • poll_fields (Union[List[str], str])poll_fields
    • tweet_fields (Union[List[str], str]) - tweet_fields
    • user_fields (Union[List[str], str])user_fields

    返回:

    返回类型 Union[dict, requests.Response, Response]

    参考资料:

    https://developer.twitter.com/en/docs/twitter-api/tweets/likes/api-reference/get-tweets-id-liking_users

    【讨论】:

    • 非常感谢,这正是我想要的!
    猜你喜欢
    • 2018-09-10
    • 2023-01-08
    • 2016-02-09
    • 2018-10-01
    • 2012-09-04
    • 2019-05-20
    • 2018-04-29
    • 2020-04-18
    • 1970-01-01
    相关资源
    最近更新 更多