Python 多线程密码字典生成脚本 - 快速生成密码组合
import threading import string import os
def generate_password(length, save_file): # 定义字母和数字 chars = string.ascii_letters + string.digits # 字典 dic = []
def generate(num, string):
if num == 0:
dic.append(string)
else:
for char in chars:
generate(num - 1, string + char)
generate(length, '')
with open(save_file, 'w') as f:
for pwd in dic:
f.write(pwd + '\n')
def main(max_length, save_file): thread_list = [] for length in range(1, max_length + 1): t = threading.Thread(target=generate_password, args=(length, save_file)) thread_list.append(t) # 开启多线程 for t in thread_list: t.start() # 阻塞主线程,等待所有子线程执行完毕 for t in thread_list: t.join() print('Password dictionary generation completed.')
if name == 'main': # 密码字典存入当前文件夹 save_file = 'password_dictionary.txt' # 密码长度最大值 max_length = 5 main(max_length, save_file)
原文地址: https://www.cveoy.top/t/topic/lh2O 著作权归作者所有。请勿转载和采集!