Я использую python, firefox и webdriver, чтобы найти все элементы, видимые в текущем окне прокрутки. Вот три утверждения, которые пытались перебрать все элементы.
e = WebDriverWait(driver, 1).until(EC.visibility_of_element_located((By.XPATH, xpath)))
e = WebDriverWait(driver, 1).until(EC.presence_of_element_located((By.XPATH, xpath)))
e = WebDriverWait(driver, 1).until(EC.element_to_be_clickable((By.XPATH, xpath)))
Однако, когда элемент не отображается в текущем окне прокрутки, функция webDriverWait () будет отключена через несколько минут вместо 0,3 секунды.
Может кто-нибудь показать мне, почему это неправильно?
Я могу показать больше кода при необходимости.
Также есть способ получить все видимые элементы в одном операторе.
Я видел, что некоторые предлагают получить все элементы и затем отфильтровать их с помощью метода is_displayed ().
Но это не решает мою проблему, что webdriverwait (), кажется, не в состоянии тайм-аут.