Обработка ошибок в 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
Другие вопросы по тегам