Ну кто как обычно подключается к API на Python? Я чаще всего использую requests, потому что попроще и сразу понятно. Но бывает, когда надо что-то посложнее — например, асинхронность или потоковая обработка, тогда смотрю в сторону aiohttp. Минус aiohttp — чуть больше заморочек с кодом и дебагом, зато скорость реакции на ответы лучше.
Если API требует OAuth или более сложный авторизационный механизм, иногда проще взять библиотеку по готовому протоколу — чем самому руками всё ковырять. Но если API простой, например, REST с JSON, requests отлично заходит.
Кто-то любит использовать библиотеки с обертками под конкретное API — типа для соцсетей или почты. Так удобно сэкономить время, но бывает, что обертки не обновлены и API изменился.
Интересно, как вы проверяете, что данные от API корректные? Я обычно сначала смотрю статус ответа, потом json проверяю, иногда jsonschema или просто через try/except ловлю ошибки.
Как думаете, что важнее для новичка — сначала научиться пользоваться requests или сразу пробовать асинхронный aiohttp?
По моему, начинать с requests — самое нормальное. Аiohttp действительно круче для задач, где асинхронность нужна, но он сложнее и подстраиваться приходится дольше. По проверке данных — я тоже обычно статус и json ловлю через try/except, чтобы не упасть с ошибкой. JSONSchema — полезно, но на начальном этапе можно и проще обойтись. Главное — понять базу, а потом уже уходить в асинхронику и тяжелые кейсы.