python+selenium 定位到元素,无法点击的解决方法

🍅 **点击文末小卡片,**免费获取软件测试全套资料,资料在手,涨薪更快

今天小编就为大家分享一篇python+selenium定位到元素,无法点击的解决方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

复制代码
selenium.common.exceptions.WebDriverException: Message: Element is not clickable at point (234.75, 22). Other element would receive the click: <img class="logo" src="/public/desktop/common/img/game_logo.png">

需要点击的按钮页面显示不了,需要下拉滚动条,能看到按钮了才能点

1、尝试下拉一段滚动条,让按钮能看到

复制代码
js = "window.scrollTo(100,450)"
driver.execute_script(js)
 
driver.find_element_by_css_selector("div.loginForm>input#loginBtn").click()

OK,能点到了

2、不是下拉加载的页面,用方法一有点傻,尝试让滚动条定位到指定元素位置

复制代码
the_loginBtn = driver.find_element_by_css_selector("div.loginForm>input#loginBtn")
ActionChains(driver).move_to_element(the_loginBtn).perform() 
 
driver.find_element_by_css_selector("div.loginForm>input#loginBtn").click()

ok,滚动到元素位置了。但是这个按钮在页面顶格显示,这个页面有导航栏,要点击的按钮被固定的导航栏挡住了。还是报错。

3、元素被覆盖,无法点击

用Enter代替click

复制代码
driver.find_element_by_css_selector("div.loginForm>input#loginBtn").send_keys(Keys.ENTER)

要导入from selenium.webdriver.common.keys import Keys,不然用不了'

发现用Enter代替click后,如果不是下拉加载的页面的话,不用下拉滚动条就能用enter点到

以上这篇python+selenium 定位到元素,无法点击的解决方法就是分享给大家的全部内容了

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。

相关推荐
2401_8836002517 小时前
Golang bufio怎么读取用户输入_Golang标准输入读取教程【详解】
jvm·数据库·python
Allen_LVyingbo17 小时前
机器伦理层级跃迁的逻辑结构、哲学意涵与形式化建模(上)
开发语言·人工智能·python·数学建模·量子计算
pele17 小时前
Python Flask如何实现用户登录_基于JWT令牌的身份验证机制实现
jvm·数据库·python
m0_4939345317 小时前
HTML怎么显示网络中断恢复提示_HTML“重新连接中…”文本【操作】
jvm·数据库·python
Absurd58718 小时前
JavaScript中模块化在游戏引擎开发中的资源调度作用
jvm·数据库·python
2301_8152795219 小时前
SQL如何利用聚合函数生成业务分析指标_KPI计算基础教程
jvm·数据库·python
qq_3300379919 小时前
mysql如何排查Out of memory错误_mysql内存分配调优
jvm·数据库·python
好家伙VCC19 小时前
**发散创新:用Rust实现基于RAFT共识算法的轻量级分布式日志系统**在分布式系统中,**一致性协议**是保障数据可靠
java·分布式·python·rust·共识算法
weixin_4585801220 小时前
如何在 Go 中直接将 AST 编译为可执行二进制文件?
jvm·数据库·python
2301_816660211 天前
PHP怎么处理Eloquent Attribute Inference属性推断_Laravel从数据自动推导类型【操作】
jvm·数据库·python