ValvePython / steamctl

🤸 Take control of Steam from your terminal
https://pypi.org/project/steamctl/
MIT License
311 stars 16 forks source link

[BUG] Cannot add authenticator to account #73

Open Xader726 opened 1 year ago

Xader726 commented 1 year ago

Description When trying to add an authenticator to steamctl, it throws an error instead of being able to progress past logging in. Tried a different install of Python, tried WSL, nothing seems to work.

Steps to Reproduce the behavior Try to add an authenticator to an account. Assuming its not just me (which is entirely possible), it should give an error saying "KeyError: 'oauth'"

Expected behavior I expected to be able to log in and add an authenticator to both steamctl and the Steam mobile app. (Like seen here)

What actually happend I wasn't able to get past logging in, since it just errors out.

Logs

steamctl -l debug (Include logs related ot the issue. Use `steamctl -l debug` to get detailed log) ``` steamctl -l debug authenticator add xader726 [DEBUG] steamctl: Parsed args: {'versions_report': None, 'log_level': 'debug', 'anonymous': False, 'user': None, 'password': None, 'command': 'authenticator', '_cmd_func': 'steamctl.commands.authenticator.cmds:cmd_authenticator_add', 'subcommand': 'add', 'force': False, 'from_secret': None, 'account': 'xader726'} To add an authenticator, first we need to login to Steam Account name: xader726 Enter password for 'xader726': [DEBUG] urllib3.connectionpool: Starting new HTTPS connection (1): steamcommunity.com:443 [DEBUG] urllib3.connectionpool: https://steamcommunity.com:443 "POST /login/getrsakey/ HTTP/1.1" 200 404 [DEBUG] urllib3.connectionpool: https://steamcommunity.com:443 "POST /login/dologin/ HTTP/1.1" 200 128 Enter email code: ##### [DEBUG] urllib3.connectionpool: https://steamcommunity.com:443 "POST /login/dologin/ HTTP/1.1" 200 289 Traceback (most recent call last): File "c:\users\xavier\appdata\local\programs\python\python39\lib\runpy.py", line 197, in _run_module_as_main return _run_code(code, main_globals, None, File "c:\users\xavier\appdata\local\programs\python\python39\lib\runpy.py", line 87, in _run_code exec(code, run_globals) File "C:\Users\Xavier\AppData\Local\Programs\Python\Python39\Scripts\steamctl.exe\__main__.py", line 7, in File "c:\users\xavier\appdata\local\programs\python\python39\lib\site-packages\steamctl\__main__.py", line 59, in main rcode = cmd_func(args=args) File "c:\users\xavier\appdata\local\programs\python\python39\lib\site-packages\steamctl\commands\authenticator\cmds.py", line 108, in cmd_authenticator_add wa.bcli_login(sa_instance=sa, auto_twofactor=bool(args.from_secret)) File "c:\users\xavier\appdata\local\programs\python\python39\lib\site-packages\steamctl\commands\authenticator\cmds.py", line 31, in bcli_login return self.login(password, captcha, email_code, twofactor_code) File "c:\users\xavier\appdata\local\programs\python\python39\lib\site-packages\steam\webauth.py", line 209, in login self._finalize_login(resp) File "c:\users\xavier\appdata\local\programs\python\python39\lib\site-packages\steam\webauth.py", line 322, in _finalize_login data = json.loads(login_response['oauth']) KeyError: 'oauth' ```

Versions Report

steamctl --versions-report (Run steamctl --versions-report and paste the output below) ```yaml G:\>steamctl --versions-report steamctl: 0.9.5 Dependencies: steam: 1.4.4 appdirs: 1.4.4 argcomplete: 3.1.1 tqdm: 4.45.0 arrow: 1.2.3 pyqrcode: 1.2.1 beautifulsoup4: 4.12.2 vpk: 1.4.0 vdf: 3.4 gevent-eventemitter: 2.1 gevent: 22.10.2 greenlet: 2.0.2 pyyaml: Not Installed pycryptodomex: 3.18.0 protobuf: 3.20.3 Python runtime: executable: c:\users\xavier\appdata\local\programs\python\python39\python.exe version: 3.9.0 (tags/v3.9.0:9cf6752, Oct 5 2020, 15:34:40) [MSC v.1927 64 bit (AMD64)] platform: win32 System info: system: Windows machine: AMD64 release: 10 version: 10.0.19041 ```
Xader726 commented 1 year ago

Found this issue with the same error for "_finalize_login" on the steam repo from 2 weeks ago, seems to be related. https://github.com/ValvePython/steam/issues/442