Инсталирайте необходимия модул:
Модулът pyperclip се използва в този урок, за да копира произволно генерираната парола, за да я използва някъде. Изпълнете следната команда, за да инсталирате pyperclip.
$ pip инсталирайте pyperclipПример-1: Внедрете прост генератор на пароли
Лесният начин за създаване на генератор на пароли е показан в следния скрипт. Деклариран е голям текст от смесени символи за генериране на парола чрез избиране на конкретните символи по дължина. Дължината на паролата ще бъде взета от потребителя. проба () функция на случайни модул е използван, за да изберете символа от текста и да се присъедините на случаен принцип. Случайно генерираната парола ще бъде отпечатана по-късно.
# Импортиране на произволен модулвнос произволен
# Задайте списък с символи за генериране на парола
символи = "01234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ & * () [] | / \?[имейл защитен] # $% ^ abcdefghijklmnopqrstuvwxyz "
# Вземете дължината на паролата от потребителя
password_length = int (input ('Въведете дължината на паролата:'))
# Генерирайте паролата
парола = "".присъединяване (произволно.пример (символи, дължина_парола))
# Отпечатайте генерираната парола
print ("Генерирана парола:% s"% парола)
Изход:
12 е дадено като стойност на дължината на паролата и след изпълнение на скрипта е генерирана парола от 12 знака.
Пример-2: Внедряване на генератор на пароли с GUI
Приложението за генериране на пароли, базирано на GUI, е полезно за потребителя да генерира произволна парола. Tkinter модул е импортиран в скрипта за създаване на удобно за потребителя приложение за генериране на пароли. Случайни и низ модулите са импортирани, за да генерират произволна парола чрез смесване на главни, малки букви, цифри и специални символи. Пиперклипът модул се използва за копиране на генерираната парола за създаване на различни видове потребителски акаунти. Password_Generator () функцията е дефинирала да генерира паролата и да я съхранява в парола променлива. CopyPassword () функцията е дефинирала да копира генерираната парола след генериране на паролата. Деклариран е обект на Tkinter за дефиниране на прозореца на приложението, където ще бъдат добавени необходимите джаджи за проектиране на приложението за генериране на пароли. Първото приспособление за етикет е определило настройката на етикета за приспособлението за завъртане, за да въведете дължината на паролата. Втората джаджа на етикета е дефинирала етикета на джаджата на текстовото поле, където ще бъде показана генерираната парола. Дефинирани са джаджи с два бутона за генериране на паролата и копиране на паролата. Когато 'Генериране на парола бутонът е натиснат, бутонът Password_Generator () ще бъде извикана функция, а произволно генерираната парола ще се покаже в текстовото поле. След генериране на паролата, акоКопие' бутонът ще бъде натиснат, след това CopyPassword () ще бъде извикана функция за копиране на паролата и текстът 'Паролата е копиранаще се покаже над бутоните.
# Импортиране на модул tkinterвнос tkinter
# Импортирайте произволни и низови модули
внос произволен, низ
# Импортиране на модул pyperclip
импортиране на пиперклип
# Дефинирайте функция за генериране на произволна парола
def Password_Generator ():
парола = "
за n в обхват (lenPassword.get ()):
парола = парола + произволно.избор (низ.ascii_uppercase + низ.ascii_lowercase + низ.цифри + низ.пунктуация)
strPassword.комплект (парола)
# Дефинирайте функция за копиране на генерираната парола
def CopyPassword ():
ако strPassword.получи () != ":
пиперклип.копие (strPassword.получи ())
lblmsg2 = tkinter.Етикет (win, text = 'Паролата е копирана', font = 'Ubuntu 12 bold', width = 15)
lblmsg2.място (x = 105, y = 120)
друго:
lblmsg2 = tkinter.Етикет (win, text = 'Няма какво да се копира', font = 'Ubuntu 12 bold', width = 15)
lblmsg2.място (x = 105, y = 120)
# Дефинирайте обект за показване на главния прозорец на приложението
win = tkinter.Tk ()
# Задайте заглавието на главния прозорец
печеля.заглавие ("Генератор на случайни пароли")
# Задайте височината и ширината на главния прозорец
печеля.геометрия ("350x220")
# Задайте позицията на прозореца
печеля.eval ('tk :: PlaceWindow . център ')
# Задайте етикет за дължината на паролата
lblPassword = tkinter.Етикет (win, text = 'Set Password Length', font = 'Ubuntu 15 bold')
lblPassword.пакет ()
# Задайте типа данни за дължината на паролата
lenPassword = tkinter.IntVar ()
# Задайте ограничение за стойността на дължината
дължина = tkinter.Spinbox (win, от_ = 6, до_ = 16, textvariable = lenPassword, width = 2)
дължина.пакет (pady = 10)
# Задайте етикета за полето за парола
lblmsg1 = tkinter.Етикет (win, text = 'Generated Password', font = 'Ubuntu 12')
lblmsg1.пакет ()
# Задайте типа данни на полето за парола
strPassword = tkinter.StringVar ()
# Дефинирайте променливата за полето за парола
textData = tkinter.Вписване (win, textvariable = strPassword, width = 15)
textData.пакет ()
# Бутон за дефиниране за извикване на функцията за генериране на произволна парола
btnPassword = tkinter.Бутон (win, text = "Generate Password", command = Password_Generator)
btnPassword.пакет (padx = 50, pady = 5, страна = tkinter.НАЛЯВО)
# Определете бутон за извикване на функцията за копиране на паролата
btnCopy = tkinter.Бутон (win, text = 'Copy', command = CopyPassword)
btnCopy.пакет (страна = tkinter.НАЛЯВО)
# Обадете се на главния контур на Tkinter, за да отворите главния прозорец
печеля.mainloop ()
Изход:
След изпълнението на скрипта ще се появи следният прозорец. 6 е зададена като стойност по подразбиране на паролата. Потребителят може да увеличи или намали стойността, преди да генерира паролата.
Паролата от 8 знака е генерирана след задаване на стойността на дължината на 8 и натискане на Генериране на парола бутон.
Паролата е копирана съобщението се появи след натискане на копие бутон. Сега тази парола може да се използва в други приложения за създаване на потребителски акаунт.
Заключение:
В този урок са обяснени два различни начина за създаване на произволни пароли. Първият пример може да се използва, ако искате да създадете генератор на пароли, базиран на текст, а вторият пример може да се използва, ако искате да създадете генератор на пароли, базиран на GUI.