Advertisement
Guest User

Ggg

a guest
Jan 22nd, 2019
138
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.94 KB | None | 0 0
  1. from tkinter import *
  2. from tkinter import scrolledtext
  3. from tkinter import messagebox
  4. import random
  5. import csv
  6. """Set Up all functions"""
  7. alphabet=[]
  8. def getAsciiCharacters():
  9. print("Gaining all characters")
  10. for i in range(97,123):
  11. alphabet.append(chr(i))
  12.  
  13. for i in range(65,91):
  14. alphabet.append(chr(i))
  15.  
  16. for i in range(0,10):
  17. alphabet.append(str(i))
  18. alphabet.append("!")
  19. alphabet.append("$")
  20. getAsciiCharacters()
  21. def saveToCsv(account, password):
  22. with open("passwords.csv", "a") as csvfile:
  23. fieldnames = ["account", "password"]
  24. writer = csv.DictWriter(csvfile, fieldnames = fieldnames)
  25. writer.writerow({"account": account, "password": password})
  26. csvfile.close()
  27. def printPasswords():
  28. TextBox.delete(1.0, END)
  29. with open("passwords.csv") as csvFile:
  30. reader = csv.DictReader(csvFile)
  31. for row in reader:
  32. TextBox.insert(INSERT,"Account: " + row["account"] + " Password: " + row["password"] + "\n" )
  33. #print("Account: " + row["account"] + " Password: " + row["password"])
  34. csvFile.close()
  35. def createPassword():
  36. password = []
  37. length = int(spinbox.get())
  38. for i in range(length):
  39. password.append(random.choice(alphabet))
  40.  
  41. saveToCsv(TextfieldUsername.get(), "".join(password))
  42. printPasswords()
  43. def deletePassword():
  44. if(TextFieldDelete.get() == ""):
  45. messagebox.showerror(title="Account Name", message="No Account name was supplied")
  46. else:
  47. with open("passwords.csv","r") as file:
  48. printPasswords()
  49. lines = file.readlines()
  50. line = 0
  51. account = TextFieldDelete.get()
  52. for row in lines:
  53. if account in row:
  54. del lines[int(line)]
  55. open("passwords.csv","w").writelines(lines)
  56. line = line + 1
  57. printPasswords()
  58.  
  59. window = Tk()
  60. window.title("Password Manager")
  61. window.geometry("600x450")
  62.  
  63. """Declare items"""
  64. lblUsername = Label(window, text="Username")
  65. lblPassword = Label(window, text="Password Length")
  66. lblDeletePassword = Label(window, text="Delete Password For Account:")
  67. TextFieldDelete = Entry(window, width=20)
  68. TextfieldUsername = Entry(window, width=20)
  69. TextBox = scrolledtext.ScrolledText(window, width=50, height=15)
  70. spinbox = Spinbox(window, from_=4, to=25)
  71. btnCreatePassword = Button(window, text="Create Password", command=createPassword)
  72. btnDeletePassword = Button(window, text="Delete Password", command=deletePassword)
  73. """Set item points"""
  74. lblUsername.grid(column=0, row=0)
  75. TextfieldUsername.grid(column=1, row=0)
  76. lblPassword.grid(column=0, row=1)
  77. spinbox.grid(column=1, row=1)
  78. btnCreatePassword.grid(column=1, row=2)
  79. TextBox.grid(column=1, row=4)
  80. lblDeletePassword.grid(column=0, row=5)
  81. TextFieldDelete.grid(column=1, row=5)
  82. btnDeletePassword.grid(column=1, row=6)
  83.  
  84. printPasswords()
  85. window.mainloop()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement