Neural Network Model for solving captchas in Python
Du kan inte välja fler än 25 ämnen Ämnen måste starta med en bokstav eller siffra, kan innehålla bindestreck ('-') och vara max 35 tecken långa.

46 lines
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()