vk_api module: User authorization failed: access_token has expired

Использую модуль Python vk_api для взаимодействия с API Вконтакте. Примерно две недели назад авторизация стала отпадывать через сутки:

vk_api.VkApi(str(vk_login), str(vk_password), app_id=6287487)

через примерно сутки получаю ошибку:

User authorization failed: access_token has expired.

Если перезапустить авторизацию- все работает еще сутки. Просьба подсказать способы заставить авторизацию держаться больше суток, либо подсказать модуль, которым можно заменить vk_api.


Ответы (1 шт):

Автор решения: VikiMayson

При авторизации указывать поле scope = offline

offline (+ 65 536) (1 << 16) Доступ к API в любое время (при использовании этой опции параметр expires_in, возвращаемый вместе с access_token, содержит 0 — токен бессрочный). Не применяется в Open API.

Документация https://dev.vk.com/ru/reference/access-rights

vk_api.VkApi(str(vk_login), str(vk_password), app_id=6287487, scope=VkUserPermissions.OFFLINE)

Документация библиотеки, которую стоит читать, их пишут не ради того "лишь бы была" https://vk-api.readthedocs.io/en/latest/vk_api.html#vk_api.vk_api.VkUserPermissions

→ Ссылка