selenium报错:is not clickable at point ,Other element would receive the click

# _*_coding:utf-8 _*_
from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
from selenium.webdriver.support.ui import WebDriverWait
import time
try:
    driver = webdriver.Chrome()
    driver.implicitly_wait(10)
    driver.get('https://www.baidu.com/')
    ActionChains(driver).move_to_element(driver.find_element_by_link_text('设置')).perform()
    driver.find_element_by_link_text('搜索设置').click()
    driver.implicitly_wait(10)
    if driver.find_element_by_link_text('保存设置').is_displayed() == True:
        print '可见'
    else:
        print '不可见'
    if driver.find_element_by_link_text('保存设置').is_enabled() == True:
        print '可点击'
    else:
        print '不可点击'
    #time.sleep(2)
    driver.find_element_by_link_text('保存设置').click()
    driver.switch_to.alert.accept()
except Exception as e:
    print e


在加入代码time.sleep(2)之前程序报错,但是从运行结果来看该元素是可见且可被使用的:

可见
可点击
Message: unknown error: Element <a href="#" class="prefpanelgo">...</a> is not clickable at point (580, 250). Other element would receive the click: <td id="se-setting-6">...</td>
  (Session info: chrome=66.0.3359.117)
  (Driver info: chromedriver=2.36.540470 (e522d04694c7ebea4ba8821272dbef4f9b818c91),platform=Windows NT 10.0.10586 x86_64)
Process finished with exit code 0

为什么可见且可被使用的元素会不能点击?这个问题暂时还不清楚。

但是在点击元素之前加入time.sleep(2)程序便可正常运行

其他:

尝试使用

driver.implicitly_wait(10)

以及

WebDriverWait(driver,5,0.5)均不能解决这个问题

猜你喜欢

转载自blog.csdn.net/baidu_30374343/article/details/83893033