Справочник · ошибки Python
HTTPError
Сервер ответил ошибкой (например, 404 или 500), и raise_for_status() её поднял.
Python пишет ошибку в последней строке сообщения: сначала название, после двоеточия — подробности. Найди своё сообщение ниже — рядом объяснение простыми словами и что исправить.
Сервер ответил ошибкой
import requests
r = requests.get("https://httpbin.org/status/404")
print(r.status_code)
r.raise_for_status()Python сообщает об ошибке
HTTPError: 404 Client Error: Not Found for url: https://httpbin.org/status/404
- Что случилось
- Сервер ответил кодом
404:Not Found. - Почему так бывает
- Метод raise_for_status превращает коды ошибок в исключение. Код 4xx значит, что ошибся запрос. Код 5xx значит, что сломался сервер.
- Как исправить
- Прочитай код. 404 — проверь адрес. 401 — проверь ключ. 429 — подожди и повтори. 500 — попробуй позже.
Разбираем в уроке 13.2 «Просим данные».
Другие ошибки
SyntaxErrorNameErrorAttributeErrorTypeErrorIndentationErrorTabErrorValueErrorZeroDivisionErrorIndexErrorKeyErrorUnboundLocalErrorRecursionErrorFileNotFoundErrorUnsupportedOperationUnicodeDecodeErrorModuleNotFoundErrorJSONDecodeErrorEOFErrorAssertionErrorValidationErrorMissingSchemaConnectionErrorReadTimeoutOperationalErrorIntegrityErrorProgrammingErrorNotImplementedError