Как я могу получить большой список подписчиков от пользователя Twitter, а затем подписаться на них? - PullRequest
1 голос
/ 29 мая 2019

Как я могу получить список подписчиков из учетной записи Twitter с большим количеством подписчиков?Мой код предназначен для получения подписчиков от пользователя и последующего их отслеживания, но максимум, что я могу получить и подписаться, составляет 200 с моим кодом, а затем после 200 он получает новых пользователей, но намного медленнее.Есть ли способ получить еще тысячи?

import tweepy
from time import sleep

consumer_key = ''
consumer_secret = ''
access_key = ''
access_secret = ''

auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_key, access_secret)

api = tweepy.API(auth)

users = tweepy.Cursor(api.followers, screen_name='twitter', count=200).items()
count = 0

while True:
    try:
        user = next(users)
        api.create_friendship(user.screen_name)
        sleep(1)
        print(user.screen_name)

    except tweepy.TweepError as e:
        if e.api_code == 161:
            while(count < 901):
                print(count, end='\r')
                sleep(1)
                count +=1
        if e.api_code == 160:
            pass
    except StopIteration:
        pass

Ответы [ 2 ]

2 голосов
/ 29 мая 2019

Твиттерская документация говорит, что есть ограничение в 200 для параметра count API.Я предполагаю, что это доставляет вам неприятности.

Количество пользователей, возвращающихся на страницу, максимум до 200. По умолчанию - 20.

1 голос
/ 29 мая 2019

Проверьте свои ограничения скорости Twitter.

Серверы обычно имеют ограничение на количество вызовов, которые вы можете сделать им, прежде чем они начнут ограничивать доступ.Причина этого в том, что если они позволят каждому серверу пинговать их 1000+ раз в минуту, стоимость их серверов будет выше, и это затруднит обнаружение атаки DNS (агрессивные серверы имеют высокий предел вызовов, которые они могут совершатьпока все еще выглядят как неагрессивные серверы).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...