ch


SUBMITTED BY: Cronus

DATE: Feb. 15, 2024, 9:14 a.m.

UPDATED: Feb. 19, 2024, 2:09 p.m.

FORMAT: Text only

SIZE: 2.9 kB

HITS: 1882

  1. import time
  2. import random
  3. from selenium import webdriver
  4. from selenium.webdriver.chrome.service import Service
  5. from selenium.webdriver.common.by import By
  6. from selenium.webdriver.support.ui import WebDriverWait
  7. from selenium.webdriver.support import expected_conditions as EC
  8. from colorama import Fore, Style
  9. # Função para gerar nomes de usuário aleatórios
  10. def generate_random_username():
  11. first_names = ["maria", "joao", "ana", "pedro", "carlos", "luis", "fernanda", "julia", "gabriel", "rafael"]
  12. last_names = ["silva", "santos", "oliveira", "pereira", "costa", "rodrigues", "almeida", "nascimento", "azevedo", "ferreira"]
  13. username = random.choice(first_names) + "-" + random.choice(last_names)
  14. return username
  15. # Função para gerar URLs completos de email
  16. def generate_email_url(username):
  17. return f"https://tuamaeaquelaursa.com/{username}"
  18. # Função para abrir o Chrome em segundo plano
  19. def open_chrome():
  20. chrome_options = webdriver.ChromeOptions()
  21. chrome_options.add_argument('--headless') # Executa o Chrome em segundo plano
  22. service = Service('path/to/chromedriver')
  23. driver = webdriver.Chrome(service=service, options=chrome_options)
  24. return driver
  25. # Função para verificar se a mensagem "Tua mãe, aquela ursa não encontrou tuas cartas." está presente
  26. def check_for_error_message(driver):
  27. try:
  28. WebDriverWait(driver, 15).until(EC.visibility_of_element_located((By.XPATH, '//p[contains(text(), "Tua mãe, aquela ursa não encontrou tuas cartas.")]')))
  29. return True
  30. except:
  31. return False
  32. # Função para imprimir os resultados em cores diferentes usando colorama
  33. def print_result(username, email_url, account_exists):
  34. if account_exists:
  35. print(Fore.GREEN + f"A conta com o username {username} existe. URL do email: {email_url}" + Style.RESET_ALL)
  36. else:
  37. print(Fore.RED + f"A conta com o username {username} não existe. URL do email: {email_url}" + Style.RESET_ALL)
  38. # Entrada da quantidade de contas a serem geradas
  39. num_accounts = int(input("Digite a quantidade de contas que deseja gerar: "))
  40. # Loop para gerar e verificar as contas
  41. for _ in range(num_accounts):
  42. # Geração de nome de usuário aleatório
  43. username = generate_random_username()
  44. # Abre o Chrome em segundo plano
  45. driver = open_chrome()
  46. # Abre a página do email
  47. email_url = generate_email_url(username)
  48. driver.get(email_url)
  49. # Espera 15 segundos para o site carregar completamente
  50. time.sleep(15)
  51. # Verifica se a mensagem de erro está presente na página
  52. error_message_exists = check_for_error_message(driver)
  53. # Determina se a conta existe com base na presença da mensagem de erro
  54. account_exists = not error_message_exists
  55. # Imprime o resultado
  56. print_result(username, email_url, account_exists)
  57. # Fecha o navegador após a verificação
  58. driver.quit()

comments powered by Disqus