python用selenium网页模拟时xpath无法定位元素解决方法3

有时我们在使用python selenium xpath时,无法定位元素,红字显示no such element。上两篇文章分别写了2种情况,1种是包含iframe的,详见https://blog.csdn.net/Sixth5/article/details/140342929。1种是有动态数字变化的,详见https://blog.csdn.net/Sixth5/article/details/140344343。

本篇写第3种情况,也是终极解决方法!针对一下特别棘手的,没法用定位的情况,我们直接放弃用selenium模块,直接使用鼠标模拟模块,控制鼠标位置和点击,来实现特定页面的点击按钮。需要用到的模块是pynput,具体代码如下,

python 复制代码
import pynput
from pynput import mouse
from pynput.keyboard import Controller
control = mouse.Controller()
control.scroll(0, -10000) #向下滚动
control.scroll(0, 10000) #向上滚动
control.position = (100, 100) #鼠标闪烁到位置
control.move(10, 10) #鼠标移动到位置
print(control.position)#打印鼠标当前位置坐标
mouse.Button.left #左键
mouse.Button.right #右键
mouse.Button.middle #中键
control.click(mouse.Button.left, 1) #左键单击
control.click(mouse.Button.left, 2) #左键双击

所以一般的话,先用control.position,打印出按钮所在的鼠标位置,知道坐标后,就可以用control.move加control.click(mouse.Button.left, 1)来点击按钮了。

相关推荐
梦里小白龙8 分钟前
java 通过Minio上传文件
java·开发语言
m0_5613596713 分钟前
基于C++的机器学习库开发
开发语言·c++·算法
2301_8213696117 分钟前
使用Python进行图像识别:CNN卷积神经网络实战
jvm·数据库·python
星空露珠20 分钟前
速算24点所有题库公式
开发语言·数据库·算法·游戏·lua
m0_5613596721 分钟前
使用Kivy开发跨平台的移动应用
jvm·数据库·python
2401_8324027521 分钟前
C++中的类型擦除技术
开发语言·c++·算法
努力学习的小廉29 分钟前
我爱学算法之—— 递归回溯综合(二)
开发语言·算法
sheji526130 分钟前
JSP基于信息安全的读书网站79f9s--程序+源码+数据库+调试部署+开发环境
java·开发语言·数据库·算法
2301_7634724631 分钟前
C++网络编程(Boost.Asio)
开发语言·c++·算法
毕设源码-邱学长31 分钟前
【开题答辩全过程】以 基于Java Web的电子商务网站的用户行为分析与个性化推荐系统为例,包含答辩的问题和答案
java·开发语言