Обработка ошибок в PRAW (Reddit)
Я играю с созданием бота с автоматическим ответом, который сканирует r/All комментарии отправки для данной команды, например.! команда
Когда он обнаруживает эту команду, он отвечает на комментарий строкой:
eg. "Hello"
Ошибка, которую я получаю, заключается в том, что для новых учетных записей существует ограничение, когда они могут комментировать только каждые 10 минут. И когда бот комментирует и переходит к следующему комментарию, чтобы ответить на него, появляется эта ошибка:
raise APIException(*errors[0])
praw.exceptions.APIException: RATELIMIT: 'you are doing that too much.
try again in 2 minutes.' on field 'ratelimit'
Как я могу обнаружить этот тип ошибки, чтобы код знал, что делать, на данный момент весь сценарий останавливается, и мне нужно запустить его снова через 10 минут.
Прочитал https://praw.readthedocs.io/en/latest/code_overview/exceptions.html но все еще не получил его
2 ответа
Exception
поднят здесь, который вы можете обрабатывать с помощью try..except
try:
the_api_call()
except APIException as e:
print "Handling exception like a baus"
PS вам нужно было бы импортировать APIException
поскольку это не встроенное исключение.
Как сказал Самакш Джайн,
использовал try..catch
импортированное исключение API с использованием следующего
import django
from rest_framework.exceptions import APIException