Coordenadas do Mouse na Tela com PyAutoGUI

Quando se trata de automação de testes ou tarefas em navegadores web com Selenium em Python, muitas vezes precisamos simular ações do teclado que vão além da simples digitação de caracteres. É aí que entram as chamadas Keys Especiais em Selenium. Neste artigo, vamos explorar a utilidade dessas teclas, quais são as mais utilizadas e como aplicá-las em seus scripts de automação.
As keys especiais são teclas que executam funções específicas no sistema operacional ou em aplicativos. No contexto do Selenium, elas permitem simular ações como pressionar a tecla “Enter”, “Ctrl”, “Shift”, entre outras, possibilitando interações mais complexas com a página web, como selecionar todo o texto de um campo ou navegar entre os elementos de um formulário.
Algumas das keys especiais mais utilizadas em automação com Selenium incluem:
ENTER
: Usada para simular a tecla Enter, frequentemente utilizada para submeter formulários.ESCAPE
: Usada para simular a tecla Esc, que pode ser usada para fechar diálogos ou cancelar operações.TAB
: Usada para navegar entre os campos de um formulário.CONTROL
(ou COMMAND
em Mac): Usada em combinação com outras teclas para executar comandos como copiar e colar.SHIFT
: Usada para digitar letras maiúsculas ou em combinação com outras teclas para selecionar texto.ARROW_UP
, ARROW_DOWN
, ARROW_LEFT
, ARROW_RIGHT
: Usadas para navegar entre os elementos de uma página ou dentro de um campo de texto.Para utilizar as keys especiais em Selenium, primeiro precisamos importar a classe Keys
do módulo selenium.webdriver.common.keys
. Veja alguns exemplos de como essas teclas podem ser aplicadas:
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
driver = webdriver.Chrome()
driver.get("http://algumaurl.com")
elemento = driver.find_element_by_id("campo_de_texto")
elemento.send_keys("Algum texto" + Keys.ENTER)
from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
from selenium.webdriver.common.keys import Keys
driver = webdriver.Chrome()
driver.get("http://algumaurl.com")
elemento = driver.find_element_by_id("campo_de_texto")
elemento.send_keys("Texto para copiar")
# Seleciona o texto e copia
actions = ActionChains(driver)
actions.key_down(Keys.CONTROL).send_keys('a').send_keys('c').key_up(Keys.CONTROL).perform()
# Cola o texto copiado em outro campo
outro_elemento = driver.find_element_by_id("outro_campo_de_texto")
actions = ActionChains(driver)
actions.key_down(Keys.CONTROL).send_keys('v').key_up(Keys.CONTROL).perform()
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
driver = webdriver.Chrome()
driver.get("http://algumaurl.com")
elemento = driver.find_element_by_id("campo_de_texto")
# Navega entre os itens de uma lista ou menu
elemento.send_keys(Keys.ARROW_DOWN)
elemento.send_keys(Keys.ARROW_UP)
from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
from selenium.webdriver.common.keys import Keys
driver = webdriver.Chrome()
driver.get("http://algumaurl.com")
elemento = driver.find_element_by_id("campo_de_texto")
# Digita texto em maiúsculas
actions = ActionChains(driver)
actions.key_down(Keys.SHIFT).send_keys('texto em maiúsculas').key_up(Keys.SHIFT).perform()
As keys especiais são ferramentas poderosas que ampliam as possibilidades de interação com a página web durante a automação com Selenium. Com elas, é possível simular quase qualquer ação que um usuário faria com o teclado, tornando seus testes e automações muito mais versáteis e eficientes. Experimente incorporá-las em seus scripts e veja como elas podem facilitar a automação de tarefas complexas.
Aprenda a programar e desenvolva soluções para o seu trabalho com Python para alcançar novas oportunidades profissionais. Aqui na Asimov você encontra:
Comentários
30xp