Oii, Thiago. Tudo bem?
Você pode usar o método WebDriverWait
do Selenium! Ele serve para aguardar até que um elemento específico da página esteja visível ou "interagível" antes de prosseguir com a automação. Dessa forma, você pode garantir que a página tenha carregado completamente antes de tentar interagir com ela.
Abaixo vou deixar um exemplo de como usar o WebDriverWait
:
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
# Espera até que o elemento com o id "elemento-alvo" esteja visível
elemento = WebDriverWait(driver, 10).until(
EC.visibility_of_element_located((By.ID, "elemento-alvo"))
)
# Agora você pode interagir com o elemento
elemento.click()
No exemplo acima, o código espera até que o elemento com o id elemento-alvo
esteja visível na página antes de continuar com a automação. Você pode substituir o seletor By.ID
por outros seletores também, isso a depender da estrutura da página.
Espero que isso dê uma ajudinha com o seu projeto! :)
Se outra dúvida surgir, fique à vontade para postar aqui no fórum.
Abraços!
Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.