Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import requests
- import sys
- import argparse
- import json
- parser = argparse.ArgumentParser()
- parser.add_argument("-email", "--user", dest = "email", help = "Email", required = True)
- parser.add_argument("-pass", "--password", dest = "password", help = "Password", required = True)
- args = parser.parse_args()
- #Parse args
- clientToken = "6b0a78ec-f4f2-438b-a197-db0b28be776b" #Use your clientToken here!
- #clientToken for my launcher, recommend using your own.
- data = {"agent":{"name":"Minecraft","version":1},"username":args.email,"password":args.password,"clientToken":clientToken}
- #Set data to specifications
- data = json.dumps(data)
- #Convert data to json for POST
- #print("Client Token: " + clientToken)
- resp = requests.post("https://authserver.mojang.com/authenticate",data=data)
- #Send data
- js = resp.json()
- #Turn response to JSON
- print(str(js))
- print("Access Token: " + js["accessToken"])
- print("Client Token: " + js["clientToken"])
- #Print data for debug info
- clientToken = js["clientToken"]
- #Get clientToken just in case.
- accounts = []
- num = 0
- #Prepare for loop to create accounts list
- for di in js["availableProfiles"]:
- #Loop through profiles
- di["num"] = num
- #Set num to current position
- accounts.append(di)
- #Append updated profile
- num += 1
- for acc in accounts:
- print(str(acc["num"]) + ": " + acc["name"] + " " + acc["id"][0:8])
- #Print accounts
- print("Select one")
- selected = int(input())
- #Select account based on num
- print("Selected: " + str(accounts[selected]))
- #print("Using access token" + js["accessToken"])
- #Display selected acount
- db = {"accessToken":js["accessToken"],"clientToken":clientToken,"selectedProfile":{"id":accounts[selected]["id"],"name":accounts[selected]["name"]}}
- #Set payload for refresh POST request
- db = json.dumps(db)
- #Convert to JSON
- resp = requests.post("https://authserver.mojang.com/refresh",data=db)
- #Send refresh request, setting profile.
- rjs = resp.json()
- accessToken = rjs["accessToken"]
- #Get response and updated accessToken
- print(str(rjs))
- #Output relevant data.
Advertisement
Add Comment
Please, Sign In to add comment