Python instaloader получает максимальное количество подписчиков - PullRequest
0 голосов
/ 09 января 2020

Есть ли способ ограничить количество подписчиков, собираемых питонами instaloader.get_followers ()? Я пытаюсь загрузить несколько подписчиков профиля 100 000+, но время ожидания истекло, поскольку многие пользователи загружают его, и оно пытается загрузить всех из них.

    username = "user"
    pw = "pw"

    instaL = instaloader.Instaloader()
    instaL.login(username, pw)

    def get_names(website, follow):
        profile = instaloader.Profile.from_username(instaL.context, website)
        followers = []
        if follow == "followers":
            followers = set(profile.get_followers())
        if follow == "followee":
            followers = set(profile.get_followees())
        names = []
        for follower in followers:
            names.append(follower.username)
        return names

Так что, если я установлю веб-сайт как, например, "world_record_egg", это будет просто тайм-аут, даже если я просто хочу первые 100 имен

1 Ответ

0 голосов
/ 06 февраля 2020

Существует функция itertools.islice () , которая позволяет получить только первые N элементов, возвращаемых итератором. Таким образом, чтобы получить только первые 100 подписчиков вместо всех, просто сделайте

from itertools import islice

followers = set(islice(profile.get_followers(), 100))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...