Skip to content

Instantly share code, notes, and snippets.

@roddds
Created November 13, 2012 19:48
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save roddds/18ff273d2b80b196734c to your computer and use it in GitHub Desktop.
Save roddds/18ff273d2b80b196734c to your computer and use it in GitHub Desktop.
#http://pastebin.com/i9u7jQ32
#http://pastebin.com/jt01hF4b
import requests
import base64
import rsa
import webbrowser
username = 'username'
password = 'password'
url = 'https://steamcommunity.com/login/getrsakey/'
headers = {"Content-type": "application/x-www-form-urlencoded",
"User-Agent": "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:12.0) Gecko/20100101 Firefox/12.0"}
data = {'username':username}
s = requests.session()
r = s.get('https://steamcommunity.com/')
rsaurl = 'https://steamcommunity.com/login/getrsakey'
loginurl = 'https://steamcommunity.com/login/dologin/'
key = s.post(rsaurl, data=data, headers=headers)
mod = key.json['publickey_mod']
exp = key.json['publickey_exp']
pk = rsa.PublicKey(int(mod, 16), int(exp, 16))
encrypted_password = rsa.encrypt(password, pk)#.encode('base64')
encrypted_password = base64.encodestring(rsa.encrypt(password, pk))
data['password'] = encrypted_password
# data['password'] = password
data['rsatimestamp'] = key.json['timestamp']
data['emailsteamid'] = 'myemail@gmail.com'
#data['emailauth'] = ''
login = s.post(loginurl, data=data, headers=headers)
print login.json['message']
if login.json.get('captcha_needed'):
print 'Captcha is needed'
webbrowser.open("https://steamcommunity.com/public/captcha.php?gid=%s" %
login.json['captcha_gid'])
data['captchagid'] = login.json['captcha_gid']
data['captcha_text'] = raw_input('Enter captcha: ')
data['redir'] = 'http://steamcommunity.com/actions/RedirectToHome'
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment