Heim >Backend-Entwicklung >Python-Tutorial >Wie klicke ich mit Selenium auf Schaltflächen mit komplexen HTML-Strukturen?

Wie klicke ich mit Selenium auf Schaltflächen mit komplexen HTML-Strukturen?

Susan Sarandon
Susan SarandonOriginal
2024-10-22 16:44:02561Durchsuche

How to Click Buttons with Complex HTML Structures Using Selenium?

Selenium klickt auf eine Schaltfläche mit komplexer HTML-Struktur

Beim Versuch, mit Selenium auf eine Schaltfläche mit einer komplexen HTML-Struktur zu klicken, kann es zu Problemen kommen die NoSuchElementException. Dies kann auftreten, wenn der HTML-Code der Schaltfläche mehrere Klassen oder Elemente mit Onclick-Attributen enthält.

Um genau auf solche Schaltflächen zu klicken, befolgen Sie diese Schritte:

  1. Überprüfen Sie die HTML-Struktur: Untersuchen Sie das Element, um seine HTML-Struktur zu bestätigen. Stellen Sie sicher, dass die Zielschaltfläche über ein Onclick-Attribut verfügt. Der bereitgestellte HTML-Code enthält beispielsweise zwei Schaltflächen mit Onclick-Attributen.
  2. Leerzeichen in CSS-Selektoren entfernen: Wenn Sie den CSS-Selektor zum Suchen des Elements verwenden, stellen Sie sicher, dass keine Leerzeichen vorhanden sind zwischen den Klassennamen. Korrigieren Sie den folgenden Selektor:

    <code class="python">driver.find_element_by_css_selector('.button .c_button .s_button').click()</code>

    An:

    <code class="python">driver.find_element_by_css_selector('.button.c_button.s_button').click()</code>
  3. Eindeutige Elemente als Ziel: Konzentrieren Sie sich auf die Identifizierung eindeutiger Elemente im HTML der Schaltfläche. In diesem Fall kann das span-Element mit den Texten „Suchen“ und „Zurücksetzen“ als eindeutige Kennungen dienen.
  4. Präzise CSS-Selektoren verwenden: Erstellen Sie CSS-Selektoren, die auf bestimmte Elemente abzielen innerhalb des HTML-Codes der Schaltfläche. Zum Beispiel:

    • So klicken Sie auf die Schaltfläche „Suchen“:

      <code class="python">driver.find_element_by_css_selector('.s_button span:contains("Search")').click()</code>
    • So klicken Sie auf die Schaltfläche „Zurücksetzen“:

      <code class="python">driver.find_element_by_css_selector('.s_button span:contains("Reset")').click()</code>

Wenn Sie diese Schritte befolgen, können Sie mit Selenium präzise auf Schaltflächen mit komplexen HTML-Strukturen klicken.

Das obige ist der detaillierte Inhalt vonWie klicke ich mit Selenium auf Schaltflächen mit komplexen HTML-Strukturen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn