Mise en veille de Selenium WebDriver en Python avec des millisecondes
Question :
Comment puis-je suspendre le exécution de Selenium WebDriver pendant quelques millisecondes en utilisant Python ?
Réponse :
Utilisation de time.sleep(secs)
Vous pouvez utiliser la bibliothèque de temps pour mettre WebDriver en veille pendant quelques millisecondes en passant un nombre à virgule flottante de secondes :
import time time.sleep(0.25) # Sleeps for 250 milliseconds
Attention :
Cependant, utiliser time.sleep(secs) sans conditions spécifiques va à l'encontre de l'objectif de l'automatisation car elle suspend l'exécution sans vérifier l'état des éléments .
Approche recommandée :
Au lieu de time.sleep(secs), utilisez WebDriverWait en conjonction avec Expected_conditions pour valider les états des éléments avant de continuer. Voici trois conditions attendues couramment utilisées :
presence_of_element_located(locator)
Vérifie qu'un élément est présent sur le DOM indépendamment de visibilité.
visibility_of_element_located(locator)
Confirme qu'un élément est présent, visible et a une hauteur et une largeur non nulles.
element_to_be_clickable(locator)
Garantit que un élément est visible, activé et cliquable.
Exemple :
from selenium.webdriver import WebDriverWait from selenium.webdriver.common.by import By from selenium.webdriver.support import expected_conditions as EC # Wait 10 seconds until the element with the ID "my_element" becomes visible before clicking it WebDriverWait(driver, 10).until(EC.visibility_of_element_located((By.ID, "my_element"))) driver.find_element(By.ID, "my_element").click()
Référence :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!