yandex_music.utils.request_async#

class yandex_music.utils.request_async.Request(client=None, headers=None, proxy_url=None, timeout=<object object>)#

Bases: object

Вспомогательный класс для выполнения запросов.

Предоставляет методы для выполнения POST и GET запросов, скачивания файлов.

Parameters:
  • client (yandex_music.Client, optional) – Клиент Yandex Music.

  • headers (dict, optional) – Заголовки передаваемые с каждым запросом.

  • proxy_url (str, optional) – Прокси.

async download(url, filename, timeout=<object object>, **kwargs) None#

Отправка запроса на получение содержимого и его запись в файл.

Parameters:
  • url (str) – Адрес для запроса.

  • filename (str) – Путь и(или) название файла вместе с расширением.

  • timeout (int | float) – Используется как время ожидания ответа от сервера вместо указанного при создании пула.

  • **kwargs – Произвольные ключевые аргументы для aiohttp.request.

Raises:

yandex_music.exceptions.YandexMusicError – Базовое исключение библиотеки.

async get(url: str, params: dict = None, timeout: int | float = <object object>, **kwargs) dict | str#

Отправка GET запроса.

Parameters:
  • url (str) – Адрес для запроса.

  • params (str) – GET параметры для запроса.

  • timeout (int | float) – Используется как время ожидания ответа от сервера вместо указанного при создании пула.

  • **kwargs – Произвольные ключевые аргументы для aiohttp.request.

Returns:

Обработанное тело ответа.

Return type:

dict | str

Raises:

yandex_music.exceptions.YandexMusicError – Базовое исключение библиотеки.

async post(url, data=None, timeout=<object object>, **kwargs) dict | str#

Отправка POST запроса.

Parameters:
  • url (str) – Адрес для запроса.

  • data (str) – POST тело запроса.

  • timeout (int | float) – Используется как время ожидания ответа от сервера вместо указанного при создании пула.

  • **kwargs – Произвольные ключевые аргументы для aiohttp.request.

Returns:

Обработанное тело ответа.

Return type:

dict | str

Raises:

yandex_music.exceptions.YandexMusicError – Базовое исключение библиотеки.

async retrieve(url, timeout=<object object>, **kwargs) bytes#

Отправка GET запроса и получение содержимого без обработки (парсинга).

Parameters:
  • url (str) – Адрес для запроса.

  • timeout (int | float) – Используется как время ожидания ответа от сервера вместо указанного при создании пула.

  • **kwargs – Произвольные ключевые аргументы для aiohttp.request.

Returns:

Тело ответа.

Return type:

bytes

Raises:

yandex_music.exceptions.YandexMusicError – Базовое исключение библиотеки.

set_and_return_client(client) Client#

Принимает клиент и присваивает его текущему объекту. При наличии авторизации добавляет заголовок.

Parameters:

client (yandex_music.Client) – Клиент Yandex Music.

Returns:

Клиент Yandex Music.

Return type:

yandex_music.Client

set_authorization(token: str) None#

Добавляет заголовок авторизации для каждого запроса.

Note

Используется при передаче своего экземпляра Request’a клиенту.

Parameters:

token (str) – OAuth токен.

set_language(lang: str) None#

Добавляет заголовок языка для каждого запроса.

Note

Возможные значения lang: en/uz/uk/us/ru/kk/hy.

Parameters:

lang (str) – Язык.

set_timeout(timeout: int | float | object = <object object>)#

Устанавливает время ожидания для всех запросов.

Parameters:

timeout (int | float) – Время ожидания от сервера.