【Python+selenium】进阶篇:js注入,没有我click不到节点

版权声明:希望转载的小伙伴注明来源哦!欢迎大家转载,更好的传递知识! https://blog.csdn.net/qq_38161040/article/details/84256098

经常写脚本的你,偶尔会碰到一些比较烦人的情况就是,明明选到了元素但是click就是没有反应,可能的情况有以下几种:

1.没错,你就是选错元素了,对,是你自己的原因;

2.有其它的元素层给挡住了,比如隔壁元素的透明外边框,当然这种问题正常点就点不到;

3.python操作浏览器时可能有几像素的偏差,因为各种原因,尤其是一些比较精细的点,很可能会出现问题;

...

好吧,学了js注入,即使我就是有元素被挡住了,甚至页面都看不到,只要是它有对应的js监听事件,我就能任意操纵它。

a=driver.find_element_by_class_name("u-button.btn.alert-ok")
#a为我要操作的元素节点
driver.execute_script("arguements[0].click();",a)
#我们要操作它的click监听,所以调用click(),如果是其他监听的话,把click改了就行,其他的不用变。
#arguements[0]为固定的写法。

也有人说click不稳定,即使没有遮挡,脚本点击也没有反应。不过不管什么情况,相信js注入都能轻易搞定的。

猜你喜欢

转载自blog.csdn.net/qq_38161040/article/details/84256098
今日推荐