Heim >Backend-Entwicklung >Python-Tutorial >Warum findet WebDriverWait keine Elemente in einem neuen Fenster?

Warum findet WebDriverWait keine Elemente in einem neuen Fenster?

Linda Hamilton
Linda HamiltonOriginal
2024-12-26 10:57:09709Durchsuche

Why is WebDriverWait Failing to Find Elements in a New Window?

WebDriverWait-Abweichungen: Element in neuem Fenster nicht erkannt

In Szenarien, in denen ein neues Fenster nach der Ausführung eines Klickereignisses (d. h. „custom_cols“) und darin enthaltenen Elementen angezeigt wird Wenn diese Fenster trotz der Implementierung von WebDriverWait nicht erkannt werden, selbst wenn sie sichtbar sind, ist eine sorgfältige Prüfung des Codes erforderlich garantiert.

Im bereitgestellten Code wartet die verwendete Methode present_of_element_located darauf, dass das Element im DOM erscheint, garantiert jedoch nicht seine Sichtbarkeit oder Anklickbarkeit. Um dies zu beheben, sollte stattdessen die Methode element_to_be_clickable verwendet werden. Diese Methode stellt sicher, dass das Element nicht nur vorhanden, sondern auch sichtbar, aktiviert und interagierbar ist.

try:
    myElem = WebDriverWait(self.browser, delay).until(EC.element_to_be_clickable((By.XPATH , xpath)))

Zusätzliche Klarstellung:

Die drei häufig verwendeten WebDriver-Erwartungen für Elementsichtbarkeit:

  • presence_of_element_located: Prüft, ob das Element existiert im DOM.
  • visibility_of_element_located: Stellt sicher, dass das Element sichtbar ist und eine Höhe und Breite größer als 0 hat.
  • element_to_be_clickable: Überprüft dass das Element sichtbar, aktiviert und klickbereit ist.

Das obige ist der detaillierte Inhalt vonWarum findet WebDriverWait keine Elemente in einem neuen Fenster?. 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