KeyAuth.ru API Wrapper for Python
Project description
KeyAuth.ru
KeyAuth.ru API Wrapper for Python
Usage Example
from keyauthru import api
import sys
import time
import platform
import os
import hashlib
from time import sleep
from datetime import datetime
# import json as jsond
def clear():
if platform.system() == 'Windows':
os.system('cls & title Python Example') # clear console, change title
elif platform.system() == 'Linux':
os.system('clear') # clear console
sys.stdout.write("\x1b]0;Python Example\x07") # change title
elif platform.system() == 'Darwin':
os.system("clear && printf '\e[3J'") # clear console
os.system('''echo - n - e "\033]0;Python Example\007"''') # change title
print("Initializing")
def getchecksum():
md5_hash = hashlib.md5()
file = open(''.join(sys.argv), "rb")
md5_hash.update(file.read())
digest = md5_hash.hexdigest()
return digest
keyauthapp = api(
name = "",
ownerid = "",
secret = "",
version = "1.0",
hash_to_check = getchecksum()
)
def answer():
try:
print("""1.Login
2.Register
3.Upgrade
4.License Key Only
""")
ans = input("Select Option: ")
if ans == "1":
user = input('Provide username: ')
password = input('Provide password: ')
keyauthapp.login(user, password)
elif ans == "2":
user = input('Provide username: ')
password = input('Provide password: ')
license = input('Provide License: ')
keyauthapp.register(user, password, license)
elif ans == "3":
user = input('Provide username: ')
license = input('Provide License: ')
keyauthapp.upgrade(user, license)
elif ans == "4":
key = input('Enter your license: ')
keyauthapp.license(key)
else:
print("\nInvalid option")
sleep(1)
clear()
answer()
except KeyboardInterrupt:
os._exit(1)
answer()
'''try:
if os.path.isfile('auth.json'): #Checking if the auth file exist
if jsond.load(open("auth.json"))["authusername"] == "": #Checks if the authusername is empty or not
print("""
1. Login
2. Register
""")
ans=input("Select Option: ") #Skipping auto-login bc auth file is empty
if ans=="1":
user = input('Provide username: ')
password = input('Provide password: ')
keyauthapp.login(user,password)
authfile = jsond.load(open("auth.json"))
authfile["authusername"] = user
authfile["authpassword"] = password
jsond.dump(authfile, open('auth.json', 'w'), sort_keys=False, indent=4)
elif ans=="2":
user = input('Provide username: ')
password = input('Provide password: ')
license = input('Provide License: ')
keyauthapp.register(user,password,license)
authfile = jsond.load(open("auth.json"))
authfile["authusername"] = user
authfile["authpassword"] = password
jsond.dump(authfile, open('auth.json', 'w'), sort_keys=False, indent=4)
else:
print("\nNot Valid Option")
os._exit(1)
else:
try: #2. Auto login
with open('auth.json', 'r') as f:
authfile = jsond.load(f)
authuser = authfile.get('authusername')
authpass = authfile.get('authpassword')
keyauthapp.login(authuser,authpass)
except Exception as e: #Error stuff
print(e)
else: #Creating auth file bc its missing
try:
f = open("auth.json", "a") #Writing content
f.write("""{
"authusername": "",
"authpassword": ""
}""")
f.close()
print ("""
1. Login
2. Register
""")#Again skipping auto-login bc the file is empty/missing
ans=input("Select Option: ")
if ans=="1":
user = input('Provide username: ')
password = input('Provide password: ')
keyauthapp.login(user,password)
authfile = jsond.load(open("auth.json"))
authfile["authusername"] = user
authfile["authpassword"] = password
jsond.dump(authfile, open('auth.json', 'w'), sort_keys=False, indent=4)
elif ans=="2":
user = input('Provide username: ')
password = input('Provide password: ')
license = input('Provide License: ')
keyauthapp.register(user,password,license)
authfile = jsond.load(open("auth.json"))
authfile["authusername"] = user
authfile["authpassword"] = password
jsond.dump(authfile, open('auth.json', 'w'), sort_keys=False, indent=4)
else:
print("\nNot Valid Option")
os._exit(1)
except Exception as e: #Error stuff
print(e)
os._exit(1)
except Exception as e: #Error stuff
print(e)
os._exit(1)'''
print("\nUser data: ")
print("Username: " + keyauthapp.user_data.username)
print("IP address: " + keyauthapp.user_data.ip)
print("Hardware-Id: " + keyauthapp.user_data.hwid)
subs = keyauthapp.user_data.subscriptions # Get all Subscription names, expiry, and timeleft
for i in range(len(subs)):
sub = subs[i]["subscription"] # Subscription from every Sub
expiry = datetime.utcfromtimestamp(int(subs[i]["expiry"])).strftime(
'%Y-%m-%d %H:%M:%S') # Expiry date from every Sub
timeleft = subs[i]["timeleft"] # Timeleft from every Sub
print(f"[{i + 1} / {len(subs)}] | Subscription: {sub} - Expiry: {expiry} - Timeleft: {timeleft}")
print("Created at: " + datetime.utcfromtimestamp(int(keyauthapp.user_data.createdate)).strftime('%Y-%m-%d %H:%M:%S'))
print("Last login at: " + datetime.utcfromtimestamp(int(keyauthapp.user_data.lastlogin)).strftime('%Y-%m-%d %H:%M:%S'))
print("Expires at: " + datetime.utcfromtimestamp(int(keyauthapp.user_data.expires)).strftime('%Y-%m-%d %H:%M:%S'))
print("\nExiting in five seconds..")
sleep(5)
os._exit(1)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
KeyAuth.ru-1.2.0.tar.gz
(7.3 kB
view details)
Built Distribution
File details
Details for the file KeyAuth.ru-1.2.0.tar.gz
.
File metadata
- Download URL: KeyAuth.ru-1.2.0.tar.gz
- Upload date:
- Size: 7.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.11
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7f3edc6e9c76606a0932d0a6c05474897aebc5fe2710c0d5107476e61caef1fe |
|
MD5 | fa09aca4edd266fa496dddfaa45fcb7a |
|
BLAKE2b-256 | ad5cd3f1358c5bc9f313566503650b572f69e3029b82e06286d8b7edf7120796 |
File details
Details for the file KeyAuth.ru-1.2.0-py3-none-any.whl
.
File metadata
- Download URL: KeyAuth.ru-1.2.0-py3-none-any.whl
- Upload date:
- Size: 7.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.11
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | cbda8f632b92ff20e9231623af791108e690272b17cf74324c5a111703a56ab5 |
|
MD5 | 196fdda7a51934e8fcaa7f815ef225c1 |
|
BLAKE2b-256 | 2f4f78b85e71a02fae58e2ccbbc7bd923ac511bef890bc8485900d1f58d78354 |