1. 程式人生 > >selenium報錯:is not clickable at point ,Other element would receive the click

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)均不能解決這個問題