python+selenium 定位到元素,无法点击的解决方法
作者:lyl_7310 时间:2022-02-01 12:29:52
报错
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点到
来源:https://blog.csdn.net/lyl_7310/article/details/78532628
标签:python,selenium,元素
0
投稿
猜你喜欢
python selenium在打开的浏览器中动态调整User Agent
2022-09-26 13:41:59
Python线程之如何解决共享变量问题
2023-08-27 16:15:56
pandas 获取季度,月度,年度首尾日期的方法
2022-08-16 06:53:06
text-overflow实现标题省略号功能
2009-05-19 12:13:00
python matplotlib拟合直线的实现
2023-01-27 15:42:35
MYSQL教程:表达式操作符和数据类型转换
2009-02-27 15:51:00
ES6正则表达式扩展笔记
2024-04-18 10:00:12
Python机器学习之scikit-learn库中KNN算法的封装与使用方法
2021-04-05 15:32:40
查看Django和flask版本的方法
2021-01-29 02:50:11
如何获取当前 select 元素的值
2010-03-29 13:07:00
ASP 自动采集实现代码
2011-03-07 11:17:00
在mac上如何使用终端打开XAMPP自带的MySQL
2024-01-17 15:41:53
python数据挖掘使用Evidently创建机器学习模型仪表板
2022-10-23 14:21:52
如何在MySQL查询结果集中得到记录行号
2008-12-17 15:00:00
教你用Python为二年级的学生批量生成数学题
2023-12-21 13:15:42
GO语言(golang)基础知识
2024-02-13 18:04:03
python字符串连接的N种方式总结
2023-10-12 08:47:44
django inspectdb 操作已有数据库数据的使用步骤
2024-01-24 00:16:50
为WordPress增加微博功能
2010-08-31 15:01:00
纯CSS在Firefox模拟text-overflow: ellipsis效果
2009-03-17 12:49:00