HTTP-Client
По-умолчанию библиотека использует SingleAiohttpClient
для отправки всех запросов.
(Его особенность в том, что он всегда использует одну и ту же сессию.)
Работа с клиентами
request_raw
Делает реквест. Для aiohttp возвращает объект aiohttp.ClientResponse
.
request_text
Делает реквест и читает поле text
. Возвращает строковый тип
request_json
Делает реквест и десериализует json
с помощью одной из доступных библиотек, выбираются с помощью choicelib
в порядке слева направо: json
, ujson
, hyperjson
, orjson
. Возвращает словарь десериализованный из json
а
request_content
Делает реквест и читает вернувшийся content
, используется для скачивания медиафайлов в аплоадерах. Возвращает байты
Параметры
url
- ссылка по которой будет произведенmethod
- HTTP метод запроса (например: get)data
- данные которые будут переданы в запросе**kwargs
- передаются в качестве параметров в запросе
При инициализации AiohttpClient
можно указать параметры
session
- объект сессии (если не указан, то будет создан новый)json_processing_module
- модуль для десериализации json
(если не указан, то будет использован один из доступных модулей)optimize
- если передан True, то в конструктор сессии будут переданы параметрыraise_for_status=True
иskip_auto_headers={"User-Agent"}
.**session_params
-**kwargs
, передаются в конструктор сессии.
Можно использовать для передачиheaders
илиcookies
Примечание
Подробнее обо всех параметрах можно почитать здесь.
Пример
Создание кастомного клиента
Кастомный клиент должен унаследовать ABCHTTPClient
и имплементировать вышеупомянутые методы