Neural Network Model for solving captchas in Python
Nelze vybrat více než 25 témat Téma musí začínat písmenem nebo číslem, může obsahovat pomlčky („-“) a může být dlouhé až 35 znaků.

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