我有以下代码(br是webdriver,一切都可以导入)。

前三行工作正常,但是link1.click()仍然给我一个错误:

link = WebDriverWait(br, 30).until(EC.element_to_be_clickable((By.ID, "buttonNew Project")))
link.click()
link1 = WebDriverWait(br, 30).until(EC.element_to_be_clickable((By.ID, "MP")))
link1.click()


即使它应该等到它可点击,我仍然会收到错误消息:

WebDriverException: unknown error: Element is not clickable at point (543, 170). Other element would receive the click: <div id="screenBlocker" style="width: 1920px; height: 979px; display: block; background-position: 940px 420px;"></div>
  (Session info: chrome=49.0.2623.108)
  (Driver info: chromedriver=2.21.371459 (36d3d07f660ff2bc1bf28a75d1cdabed0983e7c4),platform=Windows NT 6.1 SP1 x86_64)(543, 170)

最佳答案

其他元素将获得点击:<div id="screenBlocker" st...


screenBlocker听起来确实像是屏幕阻止程序。您需要关闭页面顶部的弹出窗口/叠加层,使其不可见。

如果没有可见的“关闭”按钮,请通过以下方式使其不可见:

blocker = driver.find_element_by_id("screenBlocker")
driver.execute_script("arguments[0].style = {display: 'none'};", blocker)

关于python - Selenium WebDriverWait,但仍然“元素不可点击”,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36269530/

10-10 16:43
查看更多