• selenium点击元素失败,ElementClickInterceptedException


    使用selenium在点击部分标签时显示以下错误:
    browser.find_element_by_css_selector('#blog_detail').click()

    selenium.common.exceptions.ElementClickInterceptedException: Message:element click intercepted: Element <>…<> is not clickable at point (xxx, xxx). element click intercepted <>…<>

    element click intercepted,顾名思义,就是无法点击


    如果是标签没有显示在屏幕上,使用以下代码

    js = "window.scrollBy(0,1200);"
    browser.execute_script(js)

    下拉滚动条,让要点击的标签显示在屏幕上,然后点击就不会报错了


    或者不管标签有没有显示在屏幕上,都可以使用以下代码

    a = browser.find_element(By.CSS_SELECTOR,'xxx')
    browser.execute_script("arguments[0].click();",a)

    完成点击


    目前我就只遇到这两种情况

    selenium滚动到element所在位置
    需要先最大化

    self.browser.maximize_window()

    然后

    self.browser.execute_script(f'window.scrollTo(0,{load_more.location["y"]})')

    3.使用action_chains方法

    element = driver.find_element_by_css('div[class*="loadingWhiteBox"]')
    webdriver.ActionChains(driver).move_to_element(element ).click(element ).perform()

    4.使用回车代替点击

    driver.find_element(By.CSS_SELECTOR,"#submit").send_keys(Keys.ENTER)

  • 相关阅读:
    给我买个糖?
    主题反馈
    Git:初始化项目、创建合并分支、回滚等常用方法总结
    tomcat
    tomcat
    docker
    oracle树形结构层级查询之start with ....connect by prior、level、order by以及sys_connect_by_path之浅谈
    java时间类Date、Calendar及用法
    java如何将html过滤为纯文本
    小记Java时间工具类
  • 原文地址:https://www.cnblogs.com/hushaojun/p/16008747.html
Copyright © 2020-2023  润新知