Este blog é um complemento do nosso canal no YouTube. Clique em @CanalQb para seguir e acompanhar nossos vídeos!

Sugestões de pesquisas

Como usar EC.url_changes no Selenium para aguardar mudança de URL

#Selenium; #AutomaçãoWeb; #Python
@CanalQb

Como usar EC.url_changes no Selenium para aguardar mudança de URL

@CanalQb

No Selenium, a classe condicional EC.url_changes é utilizada para aguardar até que a URL atual da página tenha mudado a partir de uma URL inicial específica. Esse recurso é especialmente útil quando se deseja garantir que uma navegação ou carregamento de página ocorreu após uma ação do usuário, como clicar em um link ou enviar um formulário.

Funcionamento do EC.url_changes

O método WebDriverWait pode ser combinado com EC.url_changes para pausar a execução do script até que a URL da página tenha se alterado, evitando erros relacionados a interações prematuras antes que a nova página seja carregada.

Exemplo de uso prático

from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

wait = WebDriverWait(driver, 10)
wait.until(EC.url_changes("https://www.example.com"))

Neste exemplo, o Selenium aguardará até 10 segundos para que a URL atual seja diferente de https://www.example.com. Caso a URL não mude dentro desse período, será lançada uma exceção TimeoutException.

Quando utilizar EC.url_changes

  • Após clicar em links que redirecionam para outras páginas.
  • Ao submeter formulários que resultam em navegação.
  • Para garantir que a página foi recarregada antes de continuar interações.

Dicas para uso eficiente

  • Combine EC.url_changes com outras condições de espera, como presence_of_element_located, para garantir que elementos importantes da nova página estejam disponíveis.
  • Ajuste o tempo de espera no WebDriverWait para evitar esperas desnecessariamente longas ou curtas demais, conforme a velocidade da aplicação.

Documentação oficial

Para mais informações e outras condições de espera, consulte a documentação oficial do Selenium em https://selenium.dev/documentation/.

Considerações finais

O uso do EC.url_changes é uma prática recomendada para tornar scripts de automação mais estáveis e confiáveis, especialmente em aplicações web que envolvem múltiplas páginas ou redirecionamentos.

Postar um comentário

Comente só assim vamos crescer juntos!
CanalQb mais próximo Quer falar com o CanalQb?
Em que posso te ajudar?
Fale comigo