Facebook
From Fabrício Adriel, 1 Year ago, written in Python.
Embed
Download Paste or View Raw
Hits: 127
  1. from selenium import webdriver
  2. from selenium.webdriver.chrome.service import Service as ChromeService
  3. from webdriver_manager.chrome import ChromeDriverManager
  4. from selenium.webdriver.chrome.options import Options
  5. from time import sleep
  6. from selenium.webdriver.common.by import By
  7. import random
  8.  
  9.  
  10. def inciar_driver():
  11.     chrome_options = Options()
  12.  
  13.     arguments = ['--lang=pt-BR', '--incognito', '--disable-notifications']
  14.  
  15.     for argument in arguments:
  16.         chrome_options.add_argument(argument)
  17.  
  18.     chrome_options.add_experimental_option('prefs', {
  19.         'download.prompt_for_download': False,
  20.         'profile.default_content_setting_values.notifications': 2,
  21.         'profile.default_content_setting_values.automatic_downloads': 1,
  22.     })
  23.  
  24.     driver = webdriver.Chrome(service=ChromeService(
  25.         ChromeDriverManager().install()), options=chrome_options)
  26.     return driver
  27.  
  28.  
  29. driver = inciar_driver()
  30. driver.get('https://cursoautomacao.netlify.app/desafios.html')
  31.  
  32. driver.execute_script("window.scrollTo(0, 1100);")
  33.  
  34.  
  35. def digitar_naturalmente(texto, elemento):
  36.     for letra in texto:
  37.         elemento.send_keys(letra)
  38.         sleep(random.randint(1, 5)/30)
  39.  
  40.  
  41. paragrafo = driver.find_element(
  42.     By.XPATH, "//textarea[@id='campoparagrafo']")
  43.  
  44. texto = """
  45. Python é uma das linguagens de programação mais interessantes que existem. É possível automatizar processos repetitivos.
  46. Além disso, poderá utilizar o "Django" para linguagem web.
  47. Para aprendizado de linguagem de programação é uma das mais utilizadas no aprendizado inicial.
  48. A sintaxe também é uma das mais fácil de aprender.
  49. Utilização dos dados, o Python tem várias bibliotecas no qual pode ser utilizada.
  50. """
  51. sleep(2)
  52.  
  53. digitar_naturalmente(texto, paragrafo)
  54. sleep(2)
  55. validar = driver.find_element(
  56.     By.XPATH, "//button[@onClick='ValidarDesafio4()']")
  57. validar.click()
  58. input(' ')
  59.  
  60. driver.close()
  61.