【发布时间】:2020-09-18 13:18:42
【问题描述】:
我尝试单击特定类的所有按钮。问题是,这些按钮只有在我点击了同一类的按钮时才会出现。我希望我能解释清楚。它是一种通过单击按钮进一步打开的时间线,并且更多按钮被添加到 DOM。我的目标是点击特定类的所有按钮,从而完全展开时间线。
这是我尝试过的:
while True:
try:
button = WebDriverWait(driver, 10).until(
EC.presence_of_element_located((By.CLASS_NAME, "classname")))
button.click()
#time.sleep(1)
#driver.implicitly_wait(2)
except:
break
我也试过了,但没有任何区别:
wait = WebDriverWait(driver, 10)
while True:
try:
button = wait.until(EC.presence_of_element_located((By.XPATH, "//a[@class='classname']")))
button.click()
except:
break
似乎驱动程序找不到新出现的元素,或者在找到它们之前循环继续。非常感谢您的帮助。
编辑:我收到以下错误
stale element reference: element is not attached to the page document
【问题讨论】:
-
你遇到了什么错误?
-
我收到以下错误:过时的元素引用:元素未附加到页面文档
-
这个错误意味着页面/请求的元素尚未加载。您是否尝试过增加迭代之间的等待时间?
-
改为
presence_of_element_located试试visibility_of_element_located
标签: python selenium selenium-webdriver webdriver webdriverwait