Maison  >  Article  >  développement back-end  >  Pourquoi les commandes `find_element_by_*` de Selenium sont-elles obsolètes et comment passer à la nouvelle méthode ?

Pourquoi les commandes `find_element_by_*` de Selenium sont-elles obsolètes et comment passer à la nouvelle méthode ?

Linda Hamilton
Linda Hamiltonoriginal
2024-11-13 08:09:02680parcourir

Why are Selenium's `find_element_by_*` commands deprecated, and how do you switch to the new method?

Dépréciation des commandes find_element_by_* dans Selenium

Dans les versions récentes de Selenium, les commandes find_element_by_* ont été obsolètes. Cela signifie que ces commandes ne doivent plus être utilisées, car elles pourraient être supprimées dans les versions futures.

Cause de la dépréciation

Cette dépréciation fait partie des efforts continus de Selenium pour simplifier ses API dans différentes langues. En supprimant les commandes find_element_by_*, Selenium vise à fournir une API plus cohérente et intuitive.

Solution

Au lieu d'utiliser les commandes find_element_by_*, vous devez utiliser le find_element (), qui accepte un objet By comme premier argument. L'objet By spécifie la stratégie de localisation à utiliser lors de la recherche d'un élément.

Pour utiliser la méthode find_element(), vous devez d'abord importer la classe By depuis le module selenium.webdriver.common.by. Une fois que vous avez importé la classe By, vous pouvez créer une instance en spécifiant la stratégie de localisateur et la valeur du localisateur.

Voici un exemple de comment remplacer la commande find_element_by_class_name() par la méthode find_element() :

from selenium.webdriver.common.by import By

button = driver.find_element(By.CLASS_NAME, "quiz_button")

Autres commandes obsolètes

En plus des commandes find_element_by_*, les commandes suivantes ont également été obsolètes :

  • find_elements_by_*
  • implicitly_wait()
  • open()
  • quit()

Ces commandes doivent également être remplacées par leurs homologues correspondantes non obsolètes. La documentation Selenium fournit des informations détaillées sur la façon de remplacer ces commandes obsolètes.

Conclusion

La dépréciation des commandes find_element_by_ est un changement important dans l'API Selenium . Il est important d'être conscient de ce changement et de commencer à utiliser la méthode find_element() au lieu des commandes find_element_by_. Ce faisant, vous vous assurerez que votre code est compatible avec les futures versions de Selenium et éviterez tout problème potentiel.

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:
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