Как проверить, включена ли у пользователя Вк двухфакторная аутентификация? (питон)
Всем здравствуйте.
Я делаю небольшой апп на питоновском tkinter-e для работы с Вк (библиотека vk_api, но если нужно будет, поставлю новую). Мне нужно, чтобы, если у пользователя включена двухфакторная аутентификация, появилось окно для ввода кода и прошла соответствующая проверка, а если нет, то сразу дальнейшая работа. Сейчас у меня, после нажатия кнопки, выполняется такая функция:
def task(event):
user_log,user_pass=log_ent.get(),pasw_ent.get()
frame1.pack_forget()
def two_auth():
key=auth_ent.get()
rem=False
return(key,rem)
vk_session = vk_api.VkApi(login=user_log, password=user_pass)
try:
vk_session.auth()
except vk_api.exceptions.AuthError:
# создаются виджеты для проверки кода - кнопка 'check', окно для ввода 'auth_ent',label
vk_session = vk_api.VkApi(login=user_log, password=user_pass, auth_handler=two_auth)
def test(event):
vk_session.auth()
vk = vk_session.get_api()
print(vk.wall.post(message='Hello world!'))
frame2.pack_forget()
check.bind('<ButtonRelease>',test)
Проблема в том, что, когда в блоке 'test' проводится vk_session.auth(), он присылает новый код , и старый, естественно, не работает. Нужно как-то по другому провести проверку на "двух-факторность" в начале, но я не могу придумать, как. Я пробовала account.getInfo, но для него нужно уже пройти авторизацию. Нет ли какой-нибудь другой функции? Спасибо!
Ответы (1 шт):
C помощью библиотеки request пытаешься распарсить страничку юзера с пост запросом владельца страницы (в vk_api вроде есть такой метод) далее смотреть итог реквеста и там будет либо страница с дввухфакторкой и кодом, либо со страничкой новостей пользователя и там уже как-то обработать. С данной библиотекой не работал, но чисто предположил, может помог как-нибудь :)