ValvePython / steam

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

re-write webauth implementation for steam backend changes #453

Open aUniqueUser opened 8 months ago

aUniqueUser commented 8 months ago

login/dologin/ was borked by valve, pr addresses issue by using the new login system

todo:

aUniqueUser commented 8 months ago

resolves https://github.com/ValvePython/steam/issues/451 https://github.com/ValvePython/steam/issues/450 after completion. https://github.com/ValvePython/steam/issues/452 will need to be looked into, anyone welcome to contribute.

negstek commented 8 months ago

@aUniqueUser I gave a try with your code but it does not work. I tried this:

user = wa.WebAuth2(STEAM_BOT_NAME)
steam_session = user.login(STEAM_BOT_PASSWORD)

item_name="AK-47 | Aquamarine Revenge (Factory New)"
url = f"https://steamcommunity.com/market/pricehistory/?appid=730&market_hash_name={item_name}"

request = steam_session.get(url)
result = json.loads(request.text)
print(result)

but I get this exception: `, line 144, in _startSessionWithCredentials self.clientID = r['response']['client_id']


KeyError: 'client_id'
`
response is empty except for interval argument:

`r = {'response': {'interval': 5, 'extended_error_message': ''}}`
negstek commented 8 months ago

Forget about my previous answer, you changed a bit the behavior of the login method so my legacy code failed but after a deeper look into your code it works fine using login with username and password attributes

user = wa.WebAuth2()
steam_session = user.login(STEAM_BOT_NAME, STEAM_BOT_PASSWORD)

item_name="AK-47 | Aquamarine Revenge (Factory New)"
url = f"https://steamcommunity.com/market/pricehistory/?appid=730&market_hash_name={item_name}"

request = steam_session.get(url)
result = json.loads(request.text)
print(result)

works fine, thank you very much for your help.

aUniqueUser commented 8 months ago

Yea before final merge I will need to correct it to work better with legacy code, good to see it working though 👍

PinguPC commented 8 months ago

Has anyone figured out how to add email authentication to this.

artur1214 commented 8 months ago

Has anyone figured out how to add email authentication to this.

Yeah. I will write some staff into codebase and add pull request (about 1 day) mayble sooner, but it's 3 AM for me

PinguPC commented 8 months ago

Has anyone figured out how to add email authentication to this.

Yeah. I will write some staff into codebase and add pull request (about 1 day) mayble sooner, but it's 3 AM for me

No worries, take your time.

artur1214 commented 8 months ago

I added

Has anyone figured out how to add email authentication to this.

Yeah. I will write some staff into codebase and add pull request (about 1 day) mayble sooner, but it's 3 AM for me

No worries, take your time.

I added some changes, and will add MUCH more later. you can check them out in another PR: https://github.com/ValvePython/steam/pull/454