Tweepy не обрабатывает ошибку HTTP 429 (слишком много запросов)

#python #twitter #tweepy #http-status-code-429

#python #Twitter #tweepy #http-status-code-429

Вопрос:

В настоящее время я использую библиотеку Tweepy, и я запустил ее с нескольких дней. Однако через некоторое время я получил следующее сообщение между каждым собранным твитом:

Ошибка HTTP 429: слишком много запросов

Или

Служба недоступна

Я думал, что функция установлена как True wait_on_rate_limit при обработке подобных вещей, или, может быть, она не учитывает ошибку 429? Я только что запросил около 10 терминов в своем фильтре, который возвращает около 1 твита максимум за 5-10 секунд.

Как я могу справиться с такой проблемой? Кстати, есть мой фрагмент кода:

 streamer = tweepy.Stream(auth=api.auth, listener=StreamListener(), timeout=3000000000)
streamer.filter(None,terms)

class StreamListener(tweepy.StreamListener):
    status_wrapper = TextWrapper(width=60, initial_indent='    ', subsequent_indent='    ')

def on_status(self, status):
    print ('{} {} - {}'.format(status.author.screen_name, status.created_at,status.text))
    saveTweet(status)
def on_disconnect(self, notice):
    print ("Disconnect: {}".format(notice))
    return

def on_warning(self, notice):
    print ("Warning: {}".format(notice))
    return

def on_exception(self, exception):
    print ("Exception: ".format(exception))
    return
def on_error(self, status_code):
    if (status_code == 403):
         print("Limit probably reached")
    else:
         print("Error occured > {}".format(status_code))
    return False
  

Комментарии:

1. Теперь у меня также есть следующее сообщение между собранными твитами Service not available

Ответ №1:

Привет!

Для тех, у кого такая же проблема, просто обновите Tweepy! Я поднял проблему в проекте Tweepy на Github, и она была решена. Пожалуйста, смотрите Выпуск # 791 для получения дополнительной информации