ValvePython / steam

☁️ Python package for interacting with Steam
http://steam.readthedocs.io
MIT License
1.05k stars 127 forks source link

WebAuth fixes, and fixed CLI login function, and automatic authentication type detection #459

Open FailSpy opened 4 months ago

FailSpy commented 4 months ago

With the help of #454 and #453, I've pulled those changes into my fork and have added more verbose exceptions like the original library. This allows auto detection of the authorization type (email code, or device code, or device authorization)

I'm posting this as a PR here mostly for anyone looking to use the CLI login functionality or wanting to have a more robust method of working with the various authentication.

It does seem like this repo is abandoned for now, so I'm happy to accept issues there as far as the login process goes to make it more robust. I plan to add QR code logins some time soon as well for the CLI login process. I'll update this PR as I add more functionality. I'm currently using this over at https://github.com/FailSpy/humble-steam-key-redeemer for people to use the CLI login for logging into their own Steam account with 2FA (again, email codes, device codes, or in-app Steam Guard authorization)

If you want to use this in your project as a drop-in replacement:

You can add this to your requirements.txt if you have one: steam @ git+https://github.com/FailSpy/steam-py-lib@master

Or you can install it with pip via: pip install git+https://github.com/FailSpy/steam-py-lib@master

VitorOriel commented 4 months ago

Thanks so much, I was looking for it since this repo is still abandoned

FailSpy commented 3 months ago

Opened an issues section on my fork so people can file issues there.

VitorOriel commented 2 months ago

@FailSpy could this MR be merged? It seems that the reviewer already approved

Have you tested the cli login with email/mobile code 2FA?

FailSpy commented 2 months ago

Wish it could! Ultimately, anyone can submit a review, but it needs to be someone with write access to allow me to do a merge. Zafpyr presumably just wanted to show support/help further the effort to get this merged.

And yes, CLI login works for me on email codes, mobile 2FA codes, and direct "connection approval" from Steam Guard app.

If it doesn't work for you, feel free to let me know — either here, or on the issues board on my fork.

Zafpyr commented 2 months ago

Hey! I'm using this version from failspy in a project of my own and had to reinstall it the other day, but had installed the one without the fixes @ ValvePython, so spent a while wondering why nothing would work, when it was just working.

Also, looked over the changes and found nothing malicious.

Yeah, I'm just showing support. Also wondered if someone with write access might get a notification if the pending PR got approval from someone without write access. Figured it was worth a go anyway.

  ¯\_(ツ)_/¯