Maison  >  Article  >  développement back-end  >  Comment localiser des éléments avec des correspondances de texte partielles dans Selenium WebDriver (Python) ?

Comment localiser des éléments avec des correspondances de texte partielles dans Selenium WebDriver (Python) ?

Susan Sarandon
Susan Sarandonoriginal
2024-10-30 05:03:28773parcourir

How to Locate Elements with Partial Text Matches in Selenium WebDriver (Python)?

Localisation d'éléments avec des correspondances de texte partielles dans Selenium WebDriver (Python)

Problème :

Les utilisateurs de Selenium WebDriver rencontrent souvent des difficultés lors de la recherche d'éléments utilisant un texte spécifique. La question se pose lorsqu'il s'agit de scénarios dans lesquels le texte peut ne pas être sensible à la casse ou correspondre partiellement au contenu de l'élément.

Bonnes pratiques :

Pour rechercher des éléments en fonction sur les correspondances de texte partielles, envisagez les pratiques suivantes :

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

Cette expression XPath recherche des éléments n'importe où dans le document où le texte contient la chaîne spécifiée.

  • CSS Sélecteurs avec 'contient' :
<code class="python">driver.find_elements_by_css_selector("div:contains('My Button')")</code>

De même, Les sélecteurs CSS avec l'opérateur « contient » peuvent être utilisés pour rechercher des éléments avec des correspondances de texte partielles dans le sélecteur spécifié.

Surmonter les problèmes d'imbrication :

Pour éviter de trouver le parent éléments qui contiennent le texte souhaité, il est possible de filtrer la recherche à l'aide des relations parent-enfant :

<code class="python">driver.find_elements_by_xpath("//div[contains(text(), 'My Button') and not(parent::div[contains(text(), 'My Button')])]")</code>

Cette expression XPath garantit que seuls les éléments qui correspondent les critères sont trouvés, tout en excluant tous les éléments parents pouvant contenir le même texte.

Considérations relatives aux performances :

Lors de la recherche d'éléments avec des correspondances de texte partielles, il est important pour prendre en compte les implications en termes de performances, en particulier lorsqu'il s'agit d'un grand nombre d'éléments sur la page. L'utilisation de sélecteurs CSS ou d'expressions XPath avec des paramètres spécifiques et efficaces peut aider à minimiser le temps nécessaire à l'opération de recherche.

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