Генератор ключей своими клешнями

от автора

Всем привет, и сегодня будет гайд как сделать генератор ключей Steam на питоне. Для этого нам понадобится:

Компоненты

Прямые руки и PyCharm 2016.2(какой угодно). Также easygui для Вашей версии Python.

Знания

Установка easygui. Умение писать в комментарии.

Подача

Вам нужно поместить easygui и random в одну и ту же папку с Вашим keygen’ом. Как это сделать?

1.Удаляете файл __init__ в easygui(Python/Lib/site-packages/easygui)
2.Копируете файл easygui и вставляете в папку с keygen’ом.
3.Переменовываете в папке Python’а easygui на __init__
4. С рандомом всё просто. Он лежит в Python/Lib/random. Просто Copy-Paste!

Для начала импорты и переменные.

from random import * from easygui import * keys = 0 #кол-во генерируемых ключей b = "Ваш ключик: " #Чтобы писало не GFJSK-JFKDF..., а Ваш ключик: (ключ) 

С этим покончили. Если у Вас нет аудитории, то можете пропустить. Авторизация:

def login_procedure(): #Функция login_procedure()     while True: #Цикл для тех кто ошибётся в вводе!         msg = "Авторизуйтесь"          title = "Вход"         fieldNames = ["Логин", "Пароль"]         #Мы сделали переменные  и список для полей ввода!         fieldValues = multpasswordbox(msg, title, fieldNames) #Сами поля         try: #Может у кого easygui нету или "Отмена" нажмёт?             USERNAME, PASSWORD = fieldValues[0], fieldValues[1] #Переменные логина и пароля         except:             msgbox("Переустановите easygui!", "Ошибка №1")             exit(0)         #Проверка         if USERNAME == "Login" and PASSWORD == "Password":             msgbox("Вход выполнен!") #Прям как на VB!             break #Выходим из цикла         else:             msgbox("Неверный логин или пароль") 


Теперь надо сделать так чтобы было кастомизируемое количество ключей. (Внимание школо-критикам! Да, программа вылетит, если вы введёте больше 10. Да я неправ).

def key_number():     global keys     msg = "Введите число от 1 до 9!"     title = "Почти готово!"     fieldName = "Кол-во ключей"      fieldValues2 = enterbox(msg, title, fieldName)      keys = fieldValues2[0] 

Ну вот. Теперь осталось самое сложное. Сделать вывод этого всего на экран. Вы зададитесь вопросом «И как вообще рандомные буквы делать?» Первый этап.

def key_giver():     global b     alphabet = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U',                 'V', 'W', 'X', 'Y', 'Z', '1', '2', '3', '4', '5', '6', '7', '8', '9', '0'] #Список букв и цифр 

Теперь добавим в функцию key_giver() цикл создания ключей и вывод на msgbox.

    for i in range(int(keys)):         for i in range(3): #Три чёрточки(4 - 1 = 3)             for i in range(5):                 a = randint(0, 35)                 b = str(b) + str(alphabet[a])             b = str(b) + str("-")         for i in range(5): #Ещё раз, чтобы было не 1-2-3-4-, a 1-2-3-4             a = randint(0, 35)             b = str(b) + str(alphabet[a])         msgbox(b, "Вот ваш ключ")         b = "Ваш ключик: " #Чтобы обнулить ключи, иначе всё бы складывалось в одну кучу. 

Удивительно. Теперь у нас есть все необходимые функции. Надо бы их вызвать.

login_procedure() key_number() key_giver() 

Теперь у Вас всё будет работать ровно и чётко. Конвертируйте в .exe и отправьте гулять по просторам интернета. Код всего 69 строчек. Не займёт много памяти.
ссылка на оригинал статьи https://habrahabr.ru/post/326100/


Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *