VkRequestsPool

Модуль для объединения запросов в один запрос execute

class vk_api.requests_pool.VkRequestsPool(vk_session)[source]

Позволяет сделать несколько обращений к API за один запрос за счет метода execute.

Варианты использованя: - В качестве менеджера контекста: запросы к API добавляются в открытый пул, и выполняются при его закрытии. - В качестве объекта пула. запросы к API дабвляются по одному в пул и выполняются все вместе при выполнении метода execute()

Parameters:

vk_session – Объект VkApi

method(method, values=None)[source]
Добавляет запрос в пул.

Возвращаемое значение будет содержать результат после закрытия пула.

Parameters:
  • method (str) – метод

  • values (dict) – параметры

Return type:

RequestResult

execute()[source]

Выполняет все находящиеся в пуле запросы и отчищает пул. Необходим для использования пула-объекта. Для пула менеджера контекста вызывается автоматически.

class vk_api.requests_pool.RequestResult[source]

Результат запроса из пула

property error

Ошибка, либо False, если запрос прошёл успешно.

property result

Результат запроса, если он прошёл успешно.

property ok

True, если результат запроса не содержит ошибок, иначе False

vk_api.requests_pool.vk_request_one_param_pool(vk_session, method, key, values, default_values=None)[source]
Использовать, если изменяется значение только одного параметра.

Возвращаемое значение содержит tuple из dict с результатами и dict с ошибками при выполнении

Parameters:
  • vk_session (vk_api.VkAPi) – объект VkApi

  • method (str) – метод

  • default_values (dict) – одинаковые значения для запросов

  • key (str) – ключ изменяющегося параметра

  • values (list) – список значений изменяющегося параметра (max: 25)

Return type:

(dict, dict)