Maison > développement back-end > Tutoriel Python > Comment suspendre efficacement l'exécution de Selenium WebDriver en Python ?

Comment suspendre efficacement l'exécution de Selenium WebDriver en Python ?

Barbara Streisand
Libérer: 2024-12-19 19:01:16
original
929 Les gens l'ont consulté

How to Efficiently Pause Selenium WebDriver Execution in Python?

Instructions d'attente et conditionnelles dans Selenium WebDriver

Question : Comment puis-je suspendre l'exécution de Selenium WebDriver pendant quelques millisecondes Python ?

Réponse :

Bien que la fonction time.sleep() puisse être utilisée pour suspendre l'exécution pendant un nombre de secondes spécifié, elle n'est généralement pas recommandée dans Selenium WebDriver automatisation.

En utilisant WebDriverWait de Selenium

À la place, Selenium fournit la classe WebDriverWait en conjonction avec les conditions attendues pour valider l'état d'un élément. Voici les conditions courantes attendues :

  1. Présence de l'élément localisé : Vérifie si un élément est présent sur le DOM.
  2. Visibilité de l'élément localisé : Vérifie si un élément est visible et a une hauteur et une largeur supérieures à 0.
  3. Élément cliquable : Vérifie si un élément est visible, activé et interactif.

Exemple :

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

driver = webdriver.Chrome()
wait = WebDriverWait(driver, 10) # Timeout after 10 seconds

# Wait until an element is clickable
element = wait.until(EC.element_to_be_clickable((By.ID, "some_button")))
element.click()
Copier après la connexion

Cette méthode est préférée à time.sleep() car elle évite une attente inutile et vérifie l'élément souhaité état avant de continuer, améliorant ainsi l'efficacité de vos tests.

Références :

Pour plus d'informations, reportez-vous à :

  • WebDriverWait ne fonctionne pas comme prévu : https://stackoverflow.com/questions/37372143/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!

source:php.cn
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