Neural Network Model for solving captchas in Python
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

46 satır
1.7KB

  1. import os
  2. import base64
  3. from selenium import webdriver
  4. from selenium.webdriver.common.by import By
  5. from selenium.webdriver.support.ui import WebDriverWait
  6. from selenium.webdriver.support import expected_conditions as EC
  7. from selenium.common.exceptions import NoSuchElementException, TimeoutException
  8. # Definindo o diretório onde as imagens serão salvas
  9. output_dir = 'captcha_images'
  10. os.makedirs(output_dir, exist_ok=True)
  11. driver = webdriver.Chrome()
  12. try:
  13. # URL da página
  14. url = "https://pje.trt2.jus.br/consultaprocessual/captcha/detalhe-processo/0000005-09.2014.5.02.0080/1"
  15. for i in range(2000):
  16. driver.get(url)
  17. try:
  18. # Esperar até que o captcha esteja presente e visível
  19. captcha_element = WebDriverWait(driver, 10).until(
  20. EC.visibility_of_element_located((By.XPATH, '//*[@id="imagemCaptcha"]'))
  21. )
  22. # Pegar a URL da imagem do captcha (Base64)
  23. captcha_base64 = captcha_element.get_attribute('src').split(',')[1] # Remover o prefixo 'data:image/png;base64,'
  24. # Decodificar o Base64 e salvar como um arquivo de imagem
  25. file_path = os.path.join(output_dir, f"captcha_{i+1}.png")
  26. with open(file_path, "wb") as file:
  27. file.write(base64.b64decode(captcha_base64))
  28. print(f"Imagem captcha {i+1} baixada com sucesso.")
  29. except TimeoutException:
  30. print("O elemento captcha não foi encontrado no tempo limite especificado.")
  31. except NoSuchElementException:
  32. print("O elemento captcha não foi encontrado na página.")
  33. finally:
  34. print("Fechando o navegador.")
  35. driver.quit()