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实现清屏的方法
Apr 30 Python
在Linux系统上部署Apache+Python+Django+MySQL环境
Dec 24 Python
利用Tkinter(python3.6)实现一个简单计算器
Dec 21 Python
深入分析python中整型不会溢出问题
Jun 18 Python
Python的条件表达式和lambda表达式实例
Jan 31 Python
python tkinter canvas 显示图片的示例
Jun 13 Python
python topk()函数求最大和最小值实例
Apr 02 Python
Python如何使用队列方式实现多线程爬虫
May 12 Python
python可以用哪些数据库
Jun 22 Python
Python持续监听文件变化代码实例
Jul 22 Python
Django生成数据库及添加用户报错解决方案
Oct 09 Python
GitHub上值得推荐的8个python 项目
Oct 30 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
分页显示Oracle数据库记录的类之一
2006/10/09 PHP
smarty静态实验表明,网络上是错的~呵呵
2006/11/25 PHP
在PHP中实现Javascript的escape()函数代码
2010/08/08 PHP
PHP简洁函数(PHP简单明了函数语法)
2012/06/10 PHP
如何用PHP实现插入排序?
2013/04/10 PHP
php调用c接口无错版介绍
2014/03/11 PHP
PHP实现连接设备、通讯和发送命令的方法
2015/10/13 PHP
php中bind_param()函数用法分析
2017/03/28 PHP
javascript 通用loading动画效果实例代码
2014/01/14 Javascript
javascript实现表格排序 编辑 拖拽 缩放
2015/01/02 Javascript
js结合正则实现国内手机号段校验
2015/06/19 Javascript
Bootstrap实现带动画过渡的弹出框
2016/08/09 Javascript
JavaScript对象创建模式实例汇总
2016/10/03 Javascript
angularjs 表单密码验证自定义指令实现代码
2016/10/27 Javascript
深入理解Angularjs向指令传递数据双向绑定机制
2016/12/31 Javascript
基于Angularjs+mybatis实现二级评论系统(仿简书)
2017/02/13 Javascript
js装饰设计模式学习心得
2018/02/17 Javascript
Vue二次封装axios为插件使用详解
2018/05/21 Javascript
Bootstrap Table 双击、单击行获取该行及全表内容
2018/08/31 Javascript
Vue 微信端扫描二维码苹果端却只能保存图片问题(解决方法)
2020/01/19 Javascript
对于Python中线程问题的简单讲解
2015/04/03 Python
在Django框架中编写Contact表单的教程
2015/07/17 Python
分析Python中设计模式之Decorator装饰器模式的要点
2016/03/02 Python
超实用的 30 段 Python 案例
2019/10/10 Python
Python 利用flask搭建一个共享服务器的步骤
2020/12/05 Python
韩国女装NO.1网店:STYLENANDA
2016/09/16 全球购物
特步官方商城:Xtep
2017/03/21 全球购物
手机配件第一品牌:ZAGG
2017/05/28 全球购物
瑜伽服装品牌:露露柠檬(lululemon athletica)
2017/06/04 全球购物
澳洲在线厨具商店:Kitchen Style
2018/05/05 全球购物
Myprotein比利时官方网站:欧洲第一运动营养品牌
2020/10/04 全球购物
烹饪自我鉴定
2014/03/01 职场文书
电影地道战观后感
2015/06/04 职场文书
Python Pandas pandas.read_sql_query函数实例用法分析
2021/06/21 Python
mysql如何配置白名单访问
2021/06/30 MySQL
mysql使用 not int 子查询隐含陷阱
2022/04/12 MySQL