selenium.common.exceptions.ElementClickInterceptedException:消息:拦截元素单击:

时间:2019-10-30 21:38:38

标签: python selenium selenium-webdriver pycharm self

selenium.common.exceptions.ElementClickInterceptedException:消息:拦截元素点击:元素...在点(79,202)不可点击。其他元素将获得点击:...   (会话信息:chrome = 77.0.3865.120)

def gotoRelatorios(self):
    sleep(5)
    # self.waitLong.until(EC.visibility_of((By.XPATH, '//*[@class="m-n font-thin h3 text-black ng-binding"]')))
    self.waitLong.until(EC.element_to_be_clickable((By.XPATH, '//*[@id="aside"]//*[@class="auto ng-scope" and @href]//*[contains(text(), "Relatórios")]'))).click()
    print("click 'Relatórios'")

1 个答案:

答案 0 :(得分:0)

chromedriver中存在一个错误(问题是它被标记为无法修复)-> GitHub Link

在评论#27中建议一种解决方法。它可能对您有用。

第一个解决方案-使用javascript执行程序

echo json_encode(range(1,3));                     // [1,2,3]
echo json_encode(array(2=>2));                    // {"2":2}
echo json_encode(range(1,3),JSON_FORCE_OBJECT);   // {"0":1,"1":2,"2":3}
echo json_encode((object)range(1,3));             // {"0":1,"1":2,"2":3}



第二种解决方案-另一种方法是使用这样的动作

driver.execute_script("arguments[0].click()", element)