Maison  >  Article  >  développement back-end  >  Pourquoi ma méthode Selenium getText() génère-t-elle une erreur lors de l'utilisation d'un localisateur de nom de classe ?

Pourquoi ma méthode Selenium getText() génère-t-elle une erreur lors de l'utilisation d'un localisateur de nom de classe ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-11-01 06:35:30110parcourir

Why is my Selenium getText() method throwing an error when using a class name locator?

Dépannage : extraction de texte avec Selenium WebDriver en Python

Problème :

Lors de la tentative de récupération de texte à partir d'un élément Web en utilisant la méthode getText() de Selenium WebDriver, vous recevez une erreur lors de l'utilisation d'un localisateur de nom de classe. L'erreur provient d'un identifiant dynamique qui change lors du rechargement de la page Web, ce qui rend le localisateur By.CLASS_NAME peu fiable.

Extrait HTML :

<code class="html"><span class="current-text" id="yui_3_7_0_4_1389185744113_384">my text</span></code>

Code Python :

<code class="python">text = driver.find_element_by_class_name("current-stage").getText("my text")</code>

Solution :

Pour résoudre ce problème, simplifiez votre code en supprimant l'argument getText("mon texte") superflu :

<code class="python">text = driver.find_element_by_class_name("current-stage").text</code>

Explication :

La méthode getText() renvoie le contenu textuel de l'élément Web spécifié. Dans ce cas, le localisateur de nom de classe identifie l'élément correct et l'attribut text récupère son contenu textuel. Tenter de spécifier le texte attendu comme deuxième argument de getText() est inutile et peut prêter à confusion.

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