import time
import random
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from colorama import Fore, Style
# Função para gerar nomes de usuário aleatórios
def generate_random_username():
first_names = ["maria", "joao", "ana", "pedro", "carlos", "luis", "fernanda", "julia", "gabriel", "rafael"]
last_names = ["silva", "santos", "oliveira", "pereira", "costa", "rodrigues", "almeida", "nascimento", "azevedo", "ferreira"]
username = random.choice(first_names) + "-" + random.choice(last_names)
return username
# Função para gerar URLs completos de email
def generate_email_url(username):
return f"https://tuamaeaquelaursa.com/{username}"
# Função para abrir o Chrome
def open_chrome():
driver = webdriver.Chrome()
return driver
# Função para verificar se a mensagem "Tua mãe, aquela ursa não encontrou tuas cartas." está presente
def check_for_error_message(driver):
try:
WebDriverWait(driver, 15).until(EC.visibility_of_element_located((By.XPATH, '//p[contains(text(), "Tua mãe, aquela ursa não encontrou tuas cartas.")]')))
return True
except:
return False
# Função para imprimir os resultados em cores diferentes usando colorama
def print_result(username, email_url, account_exists):
if account_exists:
print(Fore.GREEN + f"A conta com o username {username} existe. URL do email: {email_url}" + Style.RESET_ALL)
else:
print(Fore.RED + f"A conta com o username {username} não existe. URL do email: {email_url}" + Style.RESET_ALL)
# Entrada da quantidade de contas a serem geradas
num_accounts = int(input("Digite a quantidade de contas que deseja gerar: "))
# Loop para gerar e verificar as contas
for _ in range(num_accounts):
# Geração de nome de usuário aleatório
username = generate_random_username()
# Abre o Chrome
driver = open_chrome()
# Abre a página do email
email_url = generate_email_url(username)
driver.get(email_url)
# Espera 15 segundos para o site carregar completamente
time.sleep(15)
# Verifica se a mensagem de erro está presente na página
error_message_exists = check_for_error_message(driver)
# Determina se a conta existe com base na presença da mensagem de erro
account_exists = not error_message_exists
# Imprime o resultado
print_result(username, email_url, account_exists)
# Fecha o navegador após a verificação
driver.quit()