-
Notifications
You must be signed in to change notification settings - Fork 172
WebAuth class fixed. New api used. Email/guard code auth added. #454
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
Conversation
TODO: QR code auth add. Added function to unlogin on every device. Code refactoring done: added docstrings, typehints. NOTE: Current version now don't work with python <=3.5
artur1214
commented
Oct 28, 2023
Revibess
commented
Oct 29, 2023
Hey, cant seem to get yours to work. Could you give a login example?
Hey, cant seem to get yours to work. Could you give a login example?
Of course :)
If you use steam guard:
# AUTH VIA STEAM GUARD CODE authenticator = SteamAuthenticator(json.load(open('path/to/mafile.mafile'))) auth = WebAuth('login', 'password') session = auth.login(code=authenticator.get_code()) print(session.cookies)
If you use email:
# AUTH VIA EMAIL CODE auth = WebAuth('login', 'password') code_provider_function = auth.login(email_required=True) code = input('Please, enter your email code here: ') session = code_provider_function(code) print(session.cookies)
cinsin
commented
Dec 1, 2023
Hey, cant seem to get yours to work. Could you give a login example?
Of course :)
If you use steam guard:
# AUTH VIA STEAM GUARD CODE authenticator = SteamAuthenticator(json.load(open('path/to/mafile.mafile'))) auth = WebAuth('login', 'password') session = auth.login(code=authenticator.get_code()) print(session.cookies)If you use email:
# AUTH VIA EMAIL CODE auth = WebAuth('login', 'password') code_provider_function = auth.login(email_required=True) code = input('Please, enter your email code here: ') session = code_provider_function(code) print(session.cookies)
Hi bro, I'm sorry but I simply can not get to work with the demo code using steam guard version.
when i invoke the auth.login(code=MY_CODE) method ,it throws:
Traceback (most recent call last):
File "D:\tmp\test-webauth\steam-py-lib-web_uth_new_api_fix\steam\webauth.py", line 243, in _pollLoginStatus
self.refresh_token = resp['response']['refresh_token']
KeyError: 'refresh_token'During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:/Program Files/JetBrains/PyCharm Community Edition 2023年1月2日/plugins/python-ce/helpers/pydev/pydevd.py", line 1500, in _exec
pydev_imports.execfile(file, globals, locals) # execute the script
File "C:\Program Files\JetBrains\PyCharm Community Edition 2023年1月2日\plugins\python-ce\helpers\pydev_pydev_imps_pydev_execfile.py", line 18, in execfile
exec(compile(contents+"\n", file, 'exec'), glob, loc)
File "D:\tmp\test-webauth\steam-py-lib-web_uth_new_api_fix\test.py", line 15, in
session = auth.login(code=authenticator.get_code())
File "D:\tmp\test-webauth\steam-py-lib-web_uth_new_api_fix\steam\webauth.py", line 336, in login
self._pollLoginStatus()
File "D:\tmp\test-webauth\steam-py-lib-web_uth_new_api_fix\steam\webauth.py", line 246, in _pollLoginStatus
raise WebAuthException('Authentication requires 2fa token, which is not provided or invalid')
steam.webauth.WebAuthException: Authentication requires 2fa token, which is not provided or invalid
kindly can you please help me with this issue, thanks in advance!
/del
Проблема решена. Это я звонил.
но есть замечание
File "c:\Users\BebraPC\Desktop\steam-py-lib\steam\webauth.py", line 219, in _startSessionWithCredentials
self.client_id = resp['response']['client_id']
~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
KeyError: 'client_id'
при некорректных данных было бы лучше выдавать ошибку входа
так же не понятно могу ли я использовать прокси (session.proxies) до установки входа в аккаунта а не после
ChiHangChen
commented
Dec 27, 2023
path/to/mafile.mafile
Hi, do you have any example to get file path/to/mafile.mafile from steam mobile app?
Hey, cant seem to get yours to work. Could you give a login example?
Of course :)
If you use steam guard:
# AUTH VIA STEAM GUARD CODE authenticator = SteamAuthenticator(json.load(open('path/to/mafile.mafile'))) auth = WebAuth('login', 'password') session = auth.login(code=authenticator.get_code()) print(session.cookies)If you use email:
# AUTH VIA EMAIL CODE auth = WebAuth('login', 'password') code_provider_function = auth.login(email_required=True) code = input('Please, enter your email code here: ') session = code_provider_function(code) print(session.cookies)Hi bro, I'm sorry but I simply can not get to work with the demo code using steam guard version. when i invoke the
auth.login(code=MY_CODE)method ,it throws:Traceback (most recent call last):
File "D:\tmp\test-webauth\steam-py-lib-web_uth_new_api_fix\steam\webauth.py", line 243, in _pollLoginStatus
self.refresh_token = resp['response']['refresh_token']
KeyError: 'refresh_token'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:/Program Files/JetBrains/PyCharm Community Edition 2023年1月2日/plugins/python-ce/helpers/pydev/pydevd.py", line 1500, in _exec
pydev_imports.execfile(file, globals, locals) # execute the script
File "C:\Program Files\JetBrains\PyCharm Community Edition 2023年1月2日\plugins\python-ce\helpers\pydev_pydev_imps_pydev_execfile.py", line 18, in execfile
exec(compile(contents+"\n", file, 'exec'), glob, loc)
File "D:\tmp\test-webauth\steam-py-lib-web_uth_new_api_fix\test.py", line 15, in
session = auth.login(code=authenticator.get_code())
File "D:\tmp\test-webauth\steam-py-lib-web_uth_new_api_fix\steam\webauth.py", line 336, in login
self._pollLoginStatus()
File "D:\tmp\test-webauth\steam-py-lib-web_uth_new_api_fix\steam\webauth.py", line 246, in _pollLoginStatus
raise WebAuthException('Authentication requires 2fa token, which is not provided or invalid')
steam.webauth.WebAuthException: Authentication requires 2fa token, which is not provided or invalidkindly can you please help me with this issue, thanks in advance!
same error with the email demo
Please, enter your email code here: XXXXX
Traceback (most recent call last):
File "C:\Users\Administrator\Pictures\Programming\python steambot\steam\webauth.py", line 243, in _pollLoginStatus
self.refresh_token = resp['response']['refresh_token']
KeyError: 'refresh_token'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Users\Administrator\Pictures\Programming\python steambot\main.py", line 7, in <module>
session = code_provider_function(code)
File "C:\Users\Administrator\Pictures\Programming\python steambot\steam\webauth.py", line 327, in end_login
self._pollLoginStatus()
File "C:\Users\Administrator\Pictures\Programming\python steambot\steam\webauth.py", line 246, in _pollLoginStatus
raise WebAuthException('Authentication requires 2fa token, which is not provided or invalid')
steam.webauth.WebAuthException: Authentication requires 2fa token, which is not provided or invalid
Maby make a fork bc this repo looks abandoned.
VitorOriel
commented
Jan 10, 2024
Hey, cant seem to get yours to work. Could you give a login example?
Of course :)
If you use steam guard:
# AUTH VIA STEAM GUARD CODE authenticator = SteamAuthenticator(json.load(open('path/to/mafile.mafile'))) auth = WebAuth('login', 'password') session = auth.login(code=authenticator.get_code()) print(session.cookies)If you use email:
# AUTH VIA EMAIL CODE auth = WebAuth('login', 'password') code_provider_function = auth.login(email_required=True) code = input('Please, enter your email code here: ') session = code_provider_function(code) print(session.cookies)Hi bro, I'm sorry but I simply can not get to work with the demo code using steam guard version. when i invoke the
auth.login(code=MY_CODE)method ,it throws:Traceback (most recent call last):
File "D:\tmp\test-webauth\steam-py-lib-web_uth_new_api_fix\steam\webauth.py", line 243, in _pollLoginStatus
self.refresh_token = resp['response']['refresh_token']
KeyError: 'refresh_token'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:/Program Files/JetBrains/PyCharm Community Edition 2023年1月2日/plugins/python-ce/helpers/pydev/pydevd.py", line 1500, in _exec
pydev_imports.execfile(file, globals, locals) # execute the script
File "C:\Program Files\JetBrains\PyCharm Community Edition 2023年1月2日\plugins\python-ce\helpers\pydev_pydev_imps_pydev_execfile.py", line 18, in execfile
exec(compile(contents+"\n", file, 'exec'), glob, loc)
File "D:\tmp\test-webauth\steam-py-lib-web_uth_new_api_fix\test.py", line 15, in
session = auth.login(code=authenticator.get_code())
File "D:\tmp\test-webauth\steam-py-lib-web_uth_new_api_fix\steam\webauth.py", line 336, in login
self._pollLoginStatus()
File "D:\tmp\test-webauth\steam-py-lib-web_uth_new_api_fix\steam\webauth.py", line 246, in _pollLoginStatus
raise WebAuthException('Authentication requires 2fa token, which is not provided or invalid')
steam.webauth.WebAuthException: Authentication requires 2fa token, which is not provided or invalidkindly can you please help me with this issue, thanks in advance!
same error with the email demo
Please, enter your email code here: XXXXX Traceback (most recent call last): File "C:\Users\Administrator\Pictures\Programming\python steambot\steam\webauth.py", line 243, in _pollLoginStatus self.refresh_token = resp['response']['refresh_token'] KeyError: 'refresh_token' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "C:\Users\Administrator\Pictures\Programming\python steambot\main.py", line 7, in <module> session = code_provider_function(code) File "C:\Users\Administrator\Pictures\Programming\python steambot\steam\webauth.py", line 327, in end_login self._pollLoginStatus() File "C:\Users\Administrator\Pictures\Programming\python steambot\steam\webauth.py", line 246, in _pollLoginStatus raise WebAuthException('Authentication requires 2fa token, which is not provided or invalid') steam.webauth.WebAuthException: Authentication requires 2fa token, which is not provided or invalidMaby make a fork bc this repo looks abandoned.
yeah, this repo looks abandoned... :(
artur1214
commented
Feb 2, 2024
Hey, cant seem to get yours to work. Could you give a login example?
Of course :)
If you use steam guard:
# AUTH VIA STEAM GUARD CODE authenticator = SteamAuthenticator(json.load(open('path/to/mafile.mafile'))) auth = WebAuth('login', 'password') session = auth.login(code=authenticator.get_code()) print(session.cookies)If you use email:
# AUTH VIA EMAIL CODE auth = WebAuth('login', 'password') code_provider_function = auth.login(email_required=True) code = input('Please, enter your email code here: ') session = code_provider_function(code) print(session.cookies)Hi bro, I'm sorry but I simply can not get to work with the demo code using steam guard version. when i invoke the
auth.login(code=MY_CODE)method ,it throws:Traceback (most recent call last):
File "D:\tmp\test-webauth\steam-py-lib-web_uth_new_api_fix\steam\webauth.py", line 243, in _pollLoginStatus
self.refresh_token = resp['response']['refresh_token']
KeyError: 'refresh_token'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:/Program Files/JetBrains/PyCharm Community Edition 2023年1月2日/plugins/python-ce/helpers/pydev/pydevd.py", line 1500, in _exec
pydev_imports.execfile(file, globals, locals) # execute the script
File "C:\Program Files\JetBrains\PyCharm Community Edition 2023年1月2日\plugins\python-ce\helpers\pydev_pydev_imps_pydev_execfile.py", line 18, in execfile
exec(compile(contents+"\n", file, 'exec'), glob, loc)
File "D:\tmp\test-webauth\steam-py-lib-web_uth_new_api_fix\test.py", line 15, in
session = auth.login(code=authenticator.get_code())
File "D:\tmp\test-webauth\steam-py-lib-web_uth_new_api_fix\steam\webauth.py", line 336, in login
self._pollLoginStatus()
File "D:\tmp\test-webauth\steam-py-lib-web_uth_new_api_fix\steam\webauth.py", line 246, in _pollLoginStatus
raise WebAuthException('Authentication requires 2fa token, which is not provided or invalid')
steam.webauth.WebAuthException: Authentication requires 2fa token, which is not provided or invalidkindly can you please help me with this issue, thanks in advance!
same error with the email demo
Please, enter your email code here: XXXXX Traceback (most recent call last): File "C:\Users\Administrator\Pictures\Programming\python steambot\steam\webauth.py", line 243, in _pollLoginStatus self.refresh_token = resp['response']['refresh_token'] KeyError: 'refresh_token' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "C:\Users\Administrator\Pictures\Programming\python steambot\main.py", line 7, in <module> session = code_provider_function(code) File "C:\Users\Administrator\Pictures\Programming\python steambot\steam\webauth.py", line 327, in end_login self._pollLoginStatus() File "C:\Users\Administrator\Pictures\Programming\python steambot\steam\webauth.py", line 246, in _pollLoginStatus raise WebAuthException('Authentication requires 2fa token, which is not provided or invalid') steam.webauth.WebAuthException: Authentication requires 2fa token, which is not provided or invalidMaby make a fork bc this repo looks abandoned.
yeah, this repo looks abandoned... :(
lets start over. You receiving code in your email? And this code raises 2fa invalid error? Am I understood you right?
cloudsucker
commented
Feb 6, 2024
Hey, cant seem to get yours to work. Could you give a login example?
Of course :)
If you use steam guard:
# AUTH VIA STEAM GUARD CODE authenticator = SteamAuthenticator(json.load(open('path/to/mafile.mafile'))) auth = WebAuth('login', 'password') session = auth.login(code=authenticator.get_code()) print(session.cookies)If you use email:
# AUTH VIA EMAIL CODE auth = WebAuth('login', 'password') code_provider_function = auth.login(email_required=True) code = input('Please, enter your email code here: ') session = code_provider_function(code) print(session.cookies)Hi bro, I'm sorry but I simply can not get to work with the demo code using steam guard version. when i invoke the
auth.login(code=MY_CODE)method ,it throws:Traceback (most recent call last):
File "D:\tmp\test-webauth\steam-py-lib-web_uth_new_api_fix\steam\webauth.py", line 243, in _pollLoginStatus
self.refresh_token = resp['response']['refresh_token']
KeyError: 'refresh_token'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:/Program Files/JetBrains/PyCharm Community Edition 2023年1月2日/plugins/python-ce/helpers/pydev/pydevd.py", line 1500, in _exec
pydev_imports.execfile(file, globals, locals) # execute the script
File "C:\Program Files\JetBrains\PyCharm Community Edition 2023年1月2日\plugins\python-ce\helpers\pydev_pydev_imps_pydev_execfile.py", line 18, in execfile
exec(compile(contents+"\n", file, 'exec'), glob, loc)
File "D:\tmp\test-webauth\steam-py-lib-web_uth_new_api_fix\test.py", line 15, in
session = auth.login(code=authenticator.get_code())
File "D:\tmp\test-webauth\steam-py-lib-web_uth_new_api_fix\steam\webauth.py", line 336, in login
self._pollLoginStatus()
File "D:\tmp\test-webauth\steam-py-lib-web_uth_new_api_fix\steam\webauth.py", line 246, in _pollLoginStatus
raise WebAuthException('Authentication requires 2fa token, which is not provided or invalid')
steam.webauth.WebAuthException: Authentication requires 2fa token, which is not provided or invalidkindly can you please help me with this issue, thanks in advance!
same error with the email demo
Please, enter your email code here: XXXXX Traceback (most recent call last): File "C:\Users\Administrator\Pictures\Programming\python steambot\steam\webauth.py", line 243, in _pollLoginStatus self.refresh_token = resp['response']['refresh_token'] KeyError: 'refresh_token' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "C:\Users\Administrator\Pictures\Programming\python steambot\main.py", line 7, in <module> session = code_provider_function(code) File "C:\Users\Administrator\Pictures\Programming\python steambot\steam\webauth.py", line 327, in end_login self._pollLoginStatus() File "C:\Users\Administrator\Pictures\Programming\python steambot\steam\webauth.py", line 246, in _pollLoginStatus raise WebAuthException('Authentication requires 2fa token, which is not provided or invalid') steam.webauth.WebAuthException: Authentication requires 2fa token, which is not provided or invalidMaby make a fork bc this repo looks abandoned.
yeah, this repo looks abandoned... :(
lets start over. You receiving code in your email? And this code raises 2fa invalid error? Am I understood you right?
Why are you using an old function when you added a new one in the update request? 0_o
I am new here, so sorry if I misunderstood something.
This code works fine for me and interacts well with Steam Guard. I'm not sure about how to handle the 'mafile' in the code. It seems like others are also unsure about it, so...
auth = wa.WebAuth2("username", "password")
code_provider_function = auth.login()
session = code_provider_function
P. S. Does anyone know if it's possible to save the session between code reloads? If so, how can I do it?
FailSpy
commented
Mar 1, 2024
@maxfraid To address your postscript, you can have a look at my steam redeemer repo for more info on how to save cookies, but here's the key function:
def export_cookies(cookie_file, session): try: cookies = None if type(session) is requests.Session: # handle Steam session cookies = session.cookies pickle.dump(cookies, open(cookie_file,"wb")) return True except: return False
Hey, cant seem to get yours to work. Could you give a login example?
Of course :)
If you use steam guard:
# AUTH VIA STEAM GUARD CODE authenticator = SteamAuthenticator(json.load(open('path/to/mafile.mafile'))) auth = WebAuth('login', 'password') session = auth.login(code=authenticator.get_code()) print(session.cookies)If you use email:
# AUTH VIA EMAIL CODE auth = WebAuth('login', 'password') code_provider_function = auth.login(email_required=True) code = input('Please, enter your email code here: ') session = code_provider_function(code) print(session.cookies)Hi bro, I'm sorry but I simply can not get to work with the demo code using steam guard version. when i invoke the
auth.login(code=MY_CODE)method ,it throws:Traceback (most recent call last):
File "D:\tmp\test-webauth\steam-py-lib-web_uth_new_api_fix\steam\webauth.py", line 243, in _pollLoginStatus
self.refresh_token = resp['response']['refresh_token']
KeyError: 'refresh_token'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:/Program Files/JetBrains/PyCharm Community Edition 2023年1月2日/plugins/python-ce/helpers/pydev/pydevd.py", line 1500, in _exec
pydev_imports.execfile(file, globals, locals) # execute the script
File "C:\Program Files\JetBrains\PyCharm Community Edition 2023年1月2日\plugins\python-ce\helpers\pydev_pydev_imps_pydev_execfile.py", line 18, in execfile
exec(compile(contents+"\n", file, 'exec'), glob, loc)
File "D:\tmp\test-webauth\steam-py-lib-web_uth_new_api_fix\test.py", line 15, in
session = auth.login(code=authenticator.get_code())
File "D:\tmp\test-webauth\steam-py-lib-web_uth_new_api_fix\steam\webauth.py", line 336, in login
self._pollLoginStatus()
File "D:\tmp\test-webauth\steam-py-lib-web_uth_new_api_fix\steam\webauth.py", line 246, in _pollLoginStatus
raise WebAuthException('Authentication requires 2fa token, which is not provided or invalid')
steam.webauth.WebAuthException: Authentication requires 2fa token, which is not provided or invalidkindly can you please help me with this issue, thanks in advance!
same error with the email demo
Please, enter your email code here: XXXXX Traceback (most recent call last): File "C:\Users\Administrator\Pictures\Programming\python steambot\steam\webauth.py", line 243, in _pollLoginStatus self.refresh_token = resp['response']['refresh_token'] KeyError: 'refresh_token' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "C:\Users\Administrator\Pictures\Programming\python steambot\main.py", line 7, in <module> session = code_provider_function(code) File "C:\Users\Administrator\Pictures\Programming\python steambot\steam\webauth.py", line 327, in end_login self._pollLoginStatus() File "C:\Users\Administrator\Pictures\Programming\python steambot\steam\webauth.py", line 246, in _pollLoginStatus raise WebAuthException('Authentication requires 2fa token, which is not provided or invalid') steam.webauth.WebAuthException: Authentication requires 2fa token, which is not provided or invalidMaby make a fork bc this repo looks abandoned.
yeah, this repo looks abandoned... :(
lets start over. You receiving code in your email? And this code raises 2fa invalid error? Am I understood you right?
Why are you using an old function when you added a new one in the update request? 0_o I am new here, so sorry if I misunderstood something.
This code works fine for me and interacts well with Steam Guard. I'm not sure about how to handle the 'mafile' in the code. It seems like others are also unsure about it, so...
auth = wa.WebAuth2("username", "password") code_provider_function = auth.login() session = code_provider_functionP. S. Does anyone know if it's possible to save the session between code reloads? If so, how can I do it?
hi bro, could you give an example of code for generating a mafile, I’m just starting to understand this and would be very happy with any help
TODO: QR code auth add.
Added function to unlogin on every device.
Code refactoring done: added docstrings, typehints. NOTE: Current version now don't work with python <=3.5