Maison > développement back-end > Tutoriel Python > Comment localiser des éléments avec un texte spécifique à l'aide de Selenium WebDriver (Python) ?

Comment localiser des éléments avec un texte spécifique à l'aide de Selenium WebDriver (Python) ?

Patricia Arquette
Libérer: 2024-10-28 14:45:30
original
752 Les gens l'ont consulté

How to Locate Elements with Specific Text Using Selenium WebDriver (Python)?

Localisation d'éléments avec un texte spécifique dans Selenium WebDriver (Python)

Identifier des éléments en fonction de leur contenu textuel peut être une tâche difficile dans Selenium WebDriver . Voici les étapes pour trouver un élément contenant un texte spécifique :

Utiliser contain(text(), "text") XPath

L'approche la plus directe consiste à utiliser la fonction contain() dans une expression XPath. Cette fonction vous permet de rechercher des éléments dont le contenu textuel correspond partiellement à la chaîne spécifiée. Cependant, le comportement par défaut est sensible à la casse.

Pour résoudre le problème d'insensibilité à la casse, ajoutez le préfixe //* à l'expression XPath :

<code class="python">driver.find_elements_by_xpath("//*[contains(text(), 'My Button')]")</code>
Copier après la connexion

Cette expression localisera tout élément contenant le texte "Mon bouton" (insensible à la casse) n'importe où dans son contenu textuel.

Itération et vérification d'Element.text

Une autre option consiste à parcourir tous les éléments du page et inspectez la propriété element.text. Cependant, cette méthode est coûteuse en termes de calcul et peut être lente, en particulier avec des pages Web volumineuses.

Identification des éléments imbriqués

Pour éviter de sélectionner des éléments imbriqués dont le contenu textuel se chevauche, vous besoin de déterminer si un élément est l'enfant d'un autre élément contenant le même texte. Ceci peut être réalisé en utilisant les méthodes is_displayed() et find_element_by_xpath() :

<code class="python">outer_element = driver.find_element_by_css_selector("div.outer")
if outer_element.is_displayed():
    inner_element = outer_element.find_element_by_xpath("./div[text()='My Button']")</code>
Copier après la connexion

Ce code vérifie si l'élément externe est visible, puis utilise une expression XPath pour trouver l'élément interne directement en dessous avec le texte spécifique.

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