-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathusernames.py
More file actions
123 lines (114 loc) · 7.36 KB
/
usernames.py
File metadata and controls
123 lines (114 loc) · 7.36 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
import os
def generate_usernames(first_name: str = "", last_name: str = "", bday: str = "", file_name: str = "", prnt: bool = True, save: bool = True) -> list:
# Convert all inputs to lowercase for consistency
first_name = first_name.lower()
last_name = last_name.lower()
# Create a list to store the potential usernames
usernames = []
# Birthday components
day = bday[:2] if bday else ""
month = bday[2:4] if bday else ""
b_year = bday[4:] if bday else ""
if not bday:
# Add different combinations of first name and last name
if first_name:
usernames.append(first_name)
if last_name:
usernames.append(last_name)
if first_name and last_name:
usernames.extend([
first_name + last_name, last_name + first_name,
first_name + "." + last_name, last_name + "." + first_name,
first_name + "_" + last_name, last_name + "_" + first_name,
first_name[0] + last_name, first_name + last_name[0],
first_name[0] + "." + last_name, first_name + "." + last_name[0],
first_name[0] + "_" + last_name, first_name + "_" + last_name[0],
last_name + last_name[-1], first_name + first_name[-1],
first_name + last_name + last_name[-1], first_name[0] + last_name,
first_name + first_name[-1] + last_name[0], first_name[0] + "." + last_name + last_name[-1],
first_name + first_name[-1] + "." + last_name[0], first_name[0] + "_" + last_name,
first_name + "_" + last_name[0], first_name[:2] + last_name,
first_name[:2] + last_name, first_name + last_name + "123",
first_name + "." + last_name + "123", first_name + "_" + last_name + "123",
first_name[0] + last_name + "123", first_name + last_name[0] + "123",
first_name[:2] + last_name + "123", first_name + last_name[:2] + "123"
])
else:
if first_name:
usernames.append(first_name)
if last_name:
usernames.append(last_name)
if first_name and last_name:
usernames.extend([
first_name + last_name, last_name + first_name,
first_name + "." + last_name, last_name + "." + first_name,
first_name + "_" + last_name, last_name + "_" + first_name,
first_name[0] + last_name, first_name + last_name[0],
first_name[0] + "." + last_name, first_name + "." + last_name[0],
first_name[0] + "_" + last_name, first_name + "_" + last_name[0],
last_name + last_name[-1], first_name + first_name[-1],
first_name + last_name + last_name[-1], first_name[0] + last_name,
first_name + first_name[-1] + last_name[0], first_name[0] + "." + last_name + last_name[-1],
first_name + first_name[-1] + "." + last_name[0], first_name[0] + "_" + last_name,
first_name + "_" + last_name[0], first_name[:2] + last_name,
first_name[:2] + last_name, first_name + last_name + day,
first_name + last_name + month, first_name + last_name + b_year,
first_name + "." + last_name + day, first_name + "." + last_name + month,
first_name + "." + last_name + b_year, first_name + "_" + last_name + day,
first_name + "_" + last_name + month, first_name + "_" + last_name + b_year,
first_name[0] + last_name + day, first_name[0] + last_name + month,
first_name[0] + last_name + b_year, first_name + last_name[0] + day,
first_name + last_name[0] + month, first_name + last_name[0] + b_year,
first_name[:2] + last_name + day, first_name[:2] + last_name + month,
first_name[:2] + last_name + b_year, first_name + last_name[:2] + day,
first_name + last_name[:2] + month, first_name + last_name[:2] + b_year,
first_name + last_name + str(b_year)[-2:], first_name + "." + last_name + str(b_year)[-2:],
first_name + "_" + last_name + str(b_year)[-2:], first_name[0] + last_name + str(b_year)[-2:],
first_name + last_name[0] + str(b_year)[-2:], first_name[:2] + last_name + str(b_year)[-2:],
first_name + last_name[:2] + str(b_year)[-2:], first_name[:2] + last_name + "_" + str(b_year)[-2:],
first_name + "_" + last_name[:2] + str(b_year)[-2:], first_name[0] + last_name[:2] + str(b_year)[-2:],
first_name[:2] + last_name[0] + str(b_year)[-2:], first_name + last_name + "123",
first_name + "." + last_name + "123", first_name + "_" + last_name + "123",
first_name[0] + last_name + "123", first_name + last_name[0] + "123",
first_name[:2] + last_name + "123", first_name + last_name[:2] + "123"
])
# If only first_name or last_name is provided along with birthday
if first_name and not last_name:
usernames.extend([
first_name + day, first_name + month, first_name + b_year,
first_name + "." + day, first_name + "." + month, first_name + "." + b_year,
first_name + "_" + day, first_name + "_" + month, first_name + "_" + b_year,
first_name[0] + day, first_name[0] + month, first_name[0] + b_year,
first_name[:2] + day, first_name[:2] + month, first_name[:2] + b_year,
first_name + str(b_year)[-2:], first_name + "." + str(b_year)[-2:], first_name + "_" + str(b_year)[-2:],
first_name[0] + str(b_year)[-2:], first_name[:2] + str(b_year)[-2:], first_name + "123",
first_name + "." + "123", first_name + "_" + "123", first_name[0] + "123",
first_name[:2] + "123"
])
if last_name and not first_name:
usernames.extend([
last_name + day, last_name + month, last_name + b_year,
last_name + "." + day, last_name + "." + month, last_name + "." + b_year,
last_name + "_" + day, last_name + "_" + month, last_name + "_" + b_year,
last_name[0] + day, last_name[0] + month, last_name[0] + b_year,
last_name[:2] + day, last_name[:2] + month, last_name[:2] + b_year,
last_name + str(b_year)[-2:], last_name + "." + str(b_year)[-2:], last_name + "_" + str(b_year)[-2:],
last_name[0] + str(b_year)[-2:], last_name[:2] + str(b_year)[-2:], last_name + "123",
last_name + "." + "123", last_name + "_" + "123", last_name[0] + "123",
last_name[:2] + "123"
])
if save:
with open(file_name, "w") as f:
for i in range(len(usernames)):
if prnt:
print(f"\033[94m{i}. {usernames[i]}\033[0m")
f.write(usernames[i] + "\n")
f.write(f"\nTotal usernames generated: {len(usernames)}")
file_path = os.path.abspath(file_name)
print(f"\033[94mFile was saved to: {file_path}\033[0m")
print(f"\033[94mTotal usernames generated: {len(usernames)}\033[0m")
else:
file_path = ""
return usernames, file_path
if __name__ == "__main__":
generate_usernames(first_name="name", last_name="surname", bday="12345678", file_name="name_lastname_usernames.txt", prnt=True)