Ausgabe
Wenn ich mit der Seite interagiere, erscheint der Loader für einige Sekunden und verschwindet dann vollständig aus dem Seiten-HTML.
<div class="loader">
<img src="/static/media/loading-anim-windmill.9f645983.gif" alt="loading"><p>Loading...</p>
</div>
für das Warten auf das Erscheinen dieses Elements schreibe ich einfach
element = WebDriverWait(elem, 10).until(EC.element_to_be_clickable((by, val)))
aber woher weiß ich, wann es verschwunden ist? und wie messe ich diesen zeitbereich?
Lösung
Ähnlich wie bei der element_to_be_clickable
erwarteten Bedingung gibt es eine invisibility_of_element_located
erwartete invisibility_of_element
Bedingung.
Um also darauf zu warten, dass das Element verschwindet, können Sie Folgendes tun:
wait = WebDriverWait(driver, 10)
wait.until(EC.invisibility_of_element((By.CSS_SELECTOR, "the_css_selector")))
Um die Zeit zu messen, in der die Elemente verschwinden, können Sie wie folgt vorgehen:
startTime = time.time()
wait = WebDriverWait(driver, 10)
wait.until(EC.invisibility_of_element((By.CSS_SELECTOR, "the_css_selector")))
finishTime = time.time()
print(finishTime-startTime)
Beantwortet von – Prophet
Antwort geprüft von – Jay B. (FixError Admin)