zoukankan      html  css  js  c++  java
  • python-selenium 点击事件无法触发问题

    在使用谷歌浏览器驱动抓取网页时,遇到一个网页的下一页按钮无法点击,报错 如下

    执行:elem.click()
    
    unknown error: Element 。。。 is not clickable at point (1305, 754). Other element would receive the click: ...
    

      

       网上很多方案,按钮没有展示、按钮被覆盖、按钮没有展示的当前窗口中。但是都不是。我页面一开始就最大化,仅有一屏展示内容,且下页按钮没有被遮盖(查看页面元素确定没有覆盖)

       后面找到说是点击的按钮上有hover等事件,导致获取该元素点击时,获取自动跳到其他元素,具体什么规则我不是很清楚。

       不能直接在代码中执行点击事件,使用执行js的方法,再去执行点击事件可以解决这样的问题。

       

    browser.execute_script("$(arguments[0]).click()", elem)  

    但是仅使用该方法,普通的点击事件又无法执行了,综合一下,以下方案可以解决

    try:
        elem.click()
    except Exception as e:                            
        browser.execute_script("$(arguments[0]).click()", elem) 

    使用上述方案,解决该类无法点击问题。

     
    即使是尽在眼前的风景,每踏出一步,都会是一个新世界。
  • 相关阅读:
    BeyondLinux_Since1991
    TED系列:我们究竟在教AI学习什么
    TED系列:算法的影响
    TED系列:代码-下一代的通用语言
    TED系列:互联网源起故事
    Hadoop-01 搭建hadoop伪分布式运行环境
    JavaSE-26 Swing
    JavaSE-25 AWT
    JavaSE-24 多线程
    JavaSE-23 注解
  • 原文地址:https://www.cnblogs.com/blacktusz/p/11811614.html
Copyright © 2011-2022 走看看