Maison  >  Article  >  développement back-end  >  Comment localiser des éléments contenant du texte spécifique dans Selenium WebDriver ?

Comment localiser des éléments contenant du texte spécifique dans Selenium WebDriver ?

Susan Sarandon
Susan Sarandonoriginal
2024-10-29 12:57:02320parcourir

How to Locate Elements Containing Specific Text in Selenium WebDriver?

Recherche d'éléments avec un texte spécifique dans Selenium WebDriver

Identifier des éléments en fonction de leur contenu textuel est une tâche courante dans les tests Web. Dans Selenium WebDriver (Python), diverses méthodes peuvent être utilisées à cet effet.

Une méthode consiste à utiliser la méthode find_elements_by_xpath avec une fonction contain() :

<code class="python">driver.find_elements_by_xpath('//div[contains(text(), "' + text + '")]')</code>

Cette méthode peut trouver éléments qui contiennent le texte spécifié, mais il est sensible à la casse.

Vous pouvez également utiliser une expression XPath plus générale :

<code class="python">driver.find_elements_by_xpath("//*[contains(text(), 'My Button')]")</code>

Cette expression recherche dans l'ensemble du document les éléments qui contiennent le texte spécifié, quelle que soit la casse.

Une autre approche consiste à parcourir tous les éléments de la page et à vérifier leur propriété element.text. Cependant, cela peut être lent et ne pas toujours donner des résultats précis.

Si vous rencontrez des éléments imbriqués où l'élément parent contient également le texte cible, vous pouvez utiliser la méthode element.get_element_by_xpath('..') pour vérifiez si l'élément parent est le parent direct de l'élément enfant.

Enfin, il convient de noter que les expressions XPath et les méthodes d'itération des éléments peuvent être optimisées pour les performances. Par exemple, l'utilisation d'attributs spécifiques dans l'expression XPath ou l'utilisation de sélecteurs CSS au lieu de XPath peut améliorer le temps d'exécution.

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