Maison > développement back-end > Tutoriel Python > Comment puis-je dormir avec précision dans Selenium WebDriver à l'aide de Python et quelles sont les meilleures alternatives à « time.sleep() » ?

Comment puis-je dormir avec précision dans Selenium WebDriver à l'aide de Python et quelles sont les meilleures alternatives à « time.sleep() » ?

Susan Sarandon
Libérer: 2024-12-21 22:21:29
original
287 Les gens l'ont consulté

How Can I Precisely Sleep in Selenium WebDriver Using Python, and What Are Better Alternatives to `time.sleep()`?

Mise en veille de Selenium WebDriver en Python pendant des millisecondes

Bien que la bibliothèque de temps fournisse time.sleep(sec) pour suspendre l'exécution, pour atteindre une précision de 250 millisecondes, il faut spécifier un nombre fractionnaire de secondes :

1

2

import time

time.sleep(0.25) # Sleep for 250 milliseconds

Copier après la connexion

Cependant, une utilisation excessive de time.sleep(sec) est déconseillé dans l'automatisation de Selenium WebDriver, car cela peut nuire à l'efficacité.

Alternatives à time.sleep()

Au lieu de cela, envisagez d'utiliser WebDriverWait() en conjonction avec Expected_conditions( ). Trois conditions couramment utilisées incluent :

presence_of_element_located :

  • Vise à localiser un élément sur le DOM, quelle que soit la visibilité ou interactivité.

visibility_of_element_located :

  • Vérifie si un élément est présent, visible et a une hauteur non nulle et largeur.

element_to_be_clickable :

  • Garantit qu'un élément est visible, activé et interactif, ce qui permet des clics.

Comment utiliser WebDriverWait()

1

2

3

4

from selenium.webdriver.support.ui import WebDriverWait

from selenium.webdriver.common.by import By

 

WebDriverWait(driver, 10).until(EC.element_to_be_clickable((By.ID, "my_button")))

Copier après la connexion

Cet exemple attend pendant 10 secondes maximum pour que l'élément portant l'ID « my_button » devienne cliquable avant de continuer.

Référence

  • [WebDriverWait ne fonctionne pas comme prévu](https://stackoverflow. com/questions/39294435/webdriverwait-not-working-as-expected)

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!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal