Comment cliquer sur des boutons avec des structures HTML complexes à l'aide de Selenium ?

Susan Sarandon
Libérer: 2024-10-22 16:44:02
original
474 Les gens l'ont consulté

How to Click Buttons with Complex HTML Structures Using Selenium?

Selenium Cliquez sur un bouton avec une structure HTML complexe

Lorsque vous essayez de cliquer sur un bouton avec une structure HTML complexe à l'aide de Selenium, vous pouvez rencontrer l'exception NoSuchElementException. Cela peut se produire lorsque le code HTML du bouton contient plusieurs classes ou éléments avec des attributs onclick.

Pour cliquer avec précision sur ces boutons, suivez ces étapes :

  1. Vérifiez la structure HTML : Inspectez l'élément pour confirmer sa structure HTML. Assurez-vous que le bouton cible possède un attribut onclick. Par exemple, le HTML fourni comprend deux boutons avec des attributs onclick.
  2. Supprimer les espaces dans les sélecteurs CSS : Lorsque vous utilisez le sélecteur CSS pour localiser l'élément, assurez-vous qu'il n'y a pas d'espaces. entre les noms de classes. Corrigez le sélecteur suivant :

    <code class="python">driver.find_element_by_css_selector('.button .c_button .s_button').click()</code>
    Copier après la connexion

    À :

    <code class="python">driver.find_element_by_css_selector('.button.c_button.s_button').click()</code>
    Copier après la connexion
  3. Cibler les éléments uniques : Concentrez-vous sur l'identification des éléments uniques dans le HTML du bouton. Dans ce cas, l'élément span avec le texte "Search" et "Reset" peut servir d'identifiants uniques.
  4. Utilisez des sélecteurs CSS précis : Construisez des sélecteurs CSS qui ciblent des éléments spécifiques dans le code HTML du bouton. Par exemple :

    • Pour cliquer sur le bouton « Rechercher » :

      <code class="python">driver.find_element_by_css_selector('.s_button span:contains("Search")').click()</code>
      Copier après la connexion
    • Pour cliquer sur le bouton « Réinitialiser » :

      <code class="python">driver.find_element_by_css_selector('.s_button span:contains("Reset")').click()</code>
      Copier après la connexion

En suivant ces étapes, vous pouvez cliquer avec précision sur des boutons avec des structures HTML complexes à l'aide de Selenium.

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
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
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!