Сбой сценария Tweepy через Github Actions, но выполняется успешно локально - PullRequest
0 голосов
/ 05 апреля 2020

У меня есть сценарий Python 3, который использует библиотеку Tweepy для Twitter, который работает локально, но приводит к ошибкам requests.exceptions.ReadTimeout: HTTPSConnectionPool(host='api.twitter.com', port=443): Read timed out. (read timeout=900) и tweepy.error.TweepError: Failed to send request: HTTPSConnectionPool(host='api.twitter.com', port=443): Read timed out. (read timeout=900) при выполнении из рабочего процесса Github Actions.

Создание экземпляра Tweepy API :

tweepy.API(auth, timeout=900, wait_on_rate_limit=True, wait_on_rate_limit_notify=True)

Скрипт отправляет ~ 1200 запросов, поэтому столкнется с Ограничениями скорости Twitter . В результате wait_on_rate_limit=True он будет ждать после достижения лимита. Это (в сочетании с timeout=900 (по сравнению с 60 по умолчанию, чтобы попытаться отладить)) приводит к ~ 30 минутам для завершения. Я не могу понять, почему он не работает локально, а через GitHub Actions.

Сценарий занимает ~ 30 минут, независимо от того, успешен он (локальный) или нет (Github Actions).

...