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
Freigeben: 2024-12-26 10:57:09
Original
708 Leute haben es durchsucht

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)))
Nach dem Login kopieren

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!

Quelle:php.cn
Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage