Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

2FA auth exception #498

Open
barbashin-andrey opened this issue Dec 12, 2023 · 2 comments
Open

2FA auth exception #498

barbashin-andrey opened this issue Dec 12, 2023 · 2 comments

Comments

@barbashin-andrey
Copy link

Описание

При авторизации с использованием 2FA возникает исключение (видимо, связанное с изменением ответа от API)

Окружение

vk_api: 11.9.9
Python: 3.11.5

Консольный вывод

Traceback (most recent call last):
  File "C:\Users\PC\Desktop\project\project\project.py", line 11, in <module>
    do_shit(args.login, args.password, args.group_id, args.channel)
  File "C:\Users\PC\Desktop\project\project\functions.py", line 268, in do_shit
    proccess_input(login, password, group_id, channel)
  File "C:\Users\PC\Desktop\project\project\functions.py", line 37, in proccess_input
    vk_session.auth()
  File "C:\Users\PC\AppData\Local\Programs\Python\Python311\Lib\site-packages\vk_api\vk_api.py", line 187, in auth
    self._auth_cookies(reauth=reauth)
  File "C:\Users\PC\AppData\Local\Programs\Python\Python311\Lib\site-packages\vk_api\vk_api.py", line 207, in _auth_cookies
    self._vk_login()
  File "C:\Users\PC\AppData\Local\Programs\Python\Python311\Lib\site-packages\vk_api\vk_api.py", line 330, in _vk_login
    self._pass_twofactor(response)
  File "C:\Users\PC\AppData\Local\Programs\Python\Python311\Lib\site-packages\vk_api\vk_api.py", line 356, in _pass_twofactor
    code, remember_device = self.error_handlers[TWOFACTOR_CODE]()
    ^^^^^^^^^^^^^^^^^^^^^
ValueError: too many values to unpack (expected 2)

Как исправить

В модуле vk_api.py на 356 строке заменяем:

code, remember_device = self.error_handlers[TWOFACTOR_CODE]()

на

code = self.error_handlers[TWOFACTOR_CODE]()

и на 362 строке убираем:

'remember': int(remember_device),

т.е. словарь values на 358 строке будет выглядеть так:

values = {
            'al': '1',
            'code': code,
            'hash': auth_hash
        }

После этого авторизация с 2FA работает в штатном режиме

@barbashin-andrey
Copy link
Author

P.S.: ничего всё равно не работает =) Теперь просто выбивает vk_api.exceptions.AuthError: Unknown API auth error при попытке использовать какой-либо метод API

@Danspers
Copy link

А не пробовал использовать не релизную версию, а прямо с GitHub?
Суть в том, что с момента релиза 11.9.9 прошло почти 1,5 года и за это время появились изменения. В том числе и в процедуре авторизации. Посмотри историю коммитов.

@alkopit alkopit mentioned this issue Feb 26, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants