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


Posted in Python onJanuary 30, 2019

报错

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 定位到元素,无法点击的解决方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python Matplotlib库入门指南
May 18 Python
python通过get,post方式发送http请求和接收http响应的方法
May 26 Python
django通过ajax发起请求返回JSON格式数据的方法
Jun 04 Python
Python中使用装饰器来优化尾递归的示例
Jun 18 Python
python找出因数与质因数的方法
Jul 25 Python
python3的数据类型及数据类型转换实例详解
Aug 20 Python
Python StringIO如何在内存中读写str
Jan 07 Python
Python dict和defaultdict使用实例解析
Mar 12 Python
python如何变换环境
Jul 21 Python
Anaconda+spyder+pycharm的pytorch配置详解(GPU)
Oct 18 Python
使用pandas生成/读取csv文件的方法实例
Jul 09 Python
Python实现视频自动打码的示例代码
Apr 08 Python
解决Python selenium get页面很慢时的问题
Jan 30 #Python
对python实现模板生成脚本的方法详解
Jan 30 #Python
ActiveMQ:使用Python访问ActiveMQ的方法
Jan 30 #Python
python 发送和接收ActiveMQ消息的实例
Jan 30 #Python
Python批量生成特定尺寸图片及图画任意文字的实例
Jan 30 #Python
理想高通滤波实现Python opencv示例
Jan 30 #Python
对DataFrame数据中的重复行,利用groupby累加合并的方法详解
Jan 30 #Python
You might like
PHP 快速排序算法详解
2014/11/10 PHP
Thinkphp极验滑动验证码实现步骤解析
2020/11/24 PHP
php框架知识点的整理和补充
2021/03/01 PHP
使用Apache的rewrite
2021/03/09 Servers
JS仿flash上传头像效果实现代码
2011/07/18 Javascript
javascript权威指南 学习笔记之变量作用域分享
2011/09/28 Javascript
情人节专属 纯js脚本1k大小的3D玫瑰效果
2012/02/11 Javascript
jQuery学习笔记之控制页面实现代码
2012/02/27 Javascript
表头固定(利用jquery实现原理介绍)
2012/11/08 Javascript
jquery 清空file域示例(兼容个浏览器)
2013/10/11 Javascript
AngularJS在IE下取数据总是缓存问题的解决方法
2016/08/05 Javascript
jQuery实现弹出带遮罩层的居中浮动窗口效果
2016/09/12 Javascript
jQuery中on方法使用注意事项详解
2017/02/15 Javascript
基于rem的移动端响应式适配方案(详解)
2017/07/07 Javascript
图文介绍Vue父组件向子组件传值
2018/02/17 Javascript
全面解析vue router 基本使用(动态路由,嵌套路由)
2018/09/02 Javascript
Nuxt.js实战和配置详解
2019/08/05 Javascript
Python实现简单登录验证
2016/04/13 Python
Python正则表达式非贪婪、多行匹配功能示例
2017/08/08 Python
使用python 打开文件并做匹配处理的实例
2019/01/02 Python
Django框架模板文件使用及模板文件加载顺序分析
2019/05/23 Python
Python中turtle库的使用实例
2019/09/09 Python
Python 利用OpenCV给照片换底色的示例代码
2020/08/03 Python
法国时尚童装网站:Melijoe
2016/08/10 全球购物
世界上最大的售后摩托车零配件超市:J&P Cycles
2017/12/08 全球购物
学校经典推荐信
2013/10/30 职场文书
秋季开学典礼主持词
2014/03/19 职场文书
竞选班干部演讲稿600字
2014/08/20 职场文书
办公室文员工作自我鉴定
2014/09/19 职场文书
检讨书格式
2015/01/23 职场文书
2015年银行信贷员工作总结
2015/05/19 职场文书
大学生如何逃脱“毕业季创业队即散伙”魔咒?
2019/08/19 职场文书
Python import模块的缓存问题解决方案
2021/06/02 Python
vue使用Google Recaptcha验证的实现示例
2021/08/23 Vue.js
Redis如何实现验证码发送 以及限制每日发送次数
2022/04/18 Redis
Python使用pyecharts控件绘制图表
2022/06/05 Python