【发布时间】:2020-08-17 14:15:44
【问题描述】:
我正在编写一个测试脚本来单击使用 ajax 动态插入的按钮。然而,在脚本使用wait.element_to_be_clickable方法后,最终的元素竟然无法被点击。 代码如下所示:
element1 = wait.until(EC.element_to_be_clickable((By.CSS_SELECTOR,"#element_1")))
element2 = wait.until(EC.element_to_be_clickable((By.CSS_SELECTOR,"#element_2")))
element3 = wait.until(EC.element_to_be_clickable((By.CSS_SELECTOR,"#element_3")))
element4 = wait.until(EC.element_to_be_clickable((By.CSS_SELECTOR,"#element_4")))
elements =[element1,element2,element3,element4]
for element in elements:
element.click()
submit_button = wait.until(EC..element_to_be_clickable((By.CSS_SELECTOR,"#element_5")))
submit_button.click()
终端跳出一条错误信息,说:
selenium.common.exceptions.ElementClickInterceptedException: Message: element click intercepted: Element <input id="fsSubmitButton3988487" class="fsSubmitButton" style="" type="submit" value="Submit Form"> is not clickable at point (509, 688). Other element would receive the click: <b>...</b>
我尝试使用调试器运行脚本,它可以工作。 我也尝试添加
time.sleep(2)
在最后一行代码之前,它也有效。 为什么第一种方法不起作用?
【问题讨论】:
标签: python-3.x selenium