ALERT!
Click here to register with a few steps and explore all our cool stuff we have to offer!

Jump to content



Photo

Password generator


  • Please log in to reply
Password generator

#1

exp17
exp17
    Offline
    0
    Rep
    1
    Likes

    Lurker

Posts: 7
Threads: 3
Joined: Nov 15, 2018
Credits: 0
Five years registered
#1

Привет!

 

Мой сложный генератор паролей. написанный на python

 

8717e27dd816314e95ba7c72943d9b97-full.pn

# -*- coding:utf -8 -*-
# !/usr/bin/python3


__version__ = 'Version: 2'
from tkinter import *
import random
from tkinter import filedialog as fd

root = Tk()
root.resizable(width=False, height=False)
root.title("Password generator  " + str(__version__))
root.geometry("422x324+300+300")
calculated_text = Text(root, height=14, width=50)


def erase():
    calculated_text.delete('1.0', END)


chars = '+-/*!&$#?=@<>()|abcdefghijklnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890'
x = 0


def passw():
    for n in range(int(number_entry.get())):
        password = ''
        global x
        x += 1
        for i in range(int(length_entry.get())):
            password += random.choice(chars)
        if x <= 9:
            calculated_text.insert(END, "Password" + '  ' + str(x) + ': ' + password + "\n")
        else:
            calculated_text.insert(END, "Password" + ' ' + str(x) + ': ' + password + "\n")


def savepass():
    file_name = fd.asksaveasfilename(filetypes=(("TXT files", "*.txt"),
                                                ("All files", "*.*")), defaultextension='')
    try:
        f = open(file_name, 'w')
        s = calculated_text.get(1.0, END)
        f.close()
        f.write(s)
    except FileNotFoundError:
        pass


display_button = Button(text="Generate", command=passw)
erase_button = Button(text="Clean", command=erase)
save = Button(text="Save", command=savepass)

number_entry = Entry(width=10, justify=CENTER)
length_entry = Entry(width=10, justify=CENTER)
number_entry.insert(0, "8")
length_entry.insert(0, "25")

number_label = Label(text="      Number of passwords")
length_label = Label(text="      Password length")
number_label.grid(row=0, column=0, sticky="w")
length_label.grid(row=1, column=0, sticky="w")
number_entry.grid(row=0, column=1, padx=1, pady=5)
length_entry.grid(row=1, column=1, padx=1, pady=5)

save.grid(row=3, column=2, padx=50, pady=5, sticky="w")
display_button.grid(row=3, column=0, padx=30, pady=5, sticky="e")
erase_button.grid(row=3, column=1, padx=30, pady=5, sticky="e")

scrollb = Scrollbar(root, command=calculated_text.yview)
scrollb.grid(row=4, column=3, sticky='nsew')
calculated_text.grid(row=4, column=0, sticky='nsew', columnspan=3)
calculated_text.configure(yscrollcommand=scrollb.set)

root.mainloop()


Edited by exp17, 15 November 2018 - 06:17 PM.

  • 1

#2

sorensen47
sorensen47
    Offline
    -2
    Rep
    -4
    Likes

    Addicted

Posts: 168
Threads: 1
Joined: Nov 08, 2018
Credits: 0
Five years registered
#2

ty


  • 0

#3

mrxt
mrxt
    Offline
    0
    Rep
    34
    Likes

    Veteran

  • PipPipPipPipPipPipPip
Posts: 1374
Threads: 49
Joined: Jun 01, 2018
Credits: 0

Five years registered
#3

thanks


  • 0


 Users browsing this thread: