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,具体代码如下,

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)来点击按钮了。

相关推荐

  1. selenium元素定位总结 - xpath定位高级

    2024-07-19 14:20:01       32 阅读
  2. CSS和XPATH元素定位方法

    2024-07-19 14:20:01       27 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-19 14:20:01       67 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-19 14:20:01       72 阅读
  3. 在Django里面运行非项目文件

    2024-07-19 14:20:01       58 阅读
  4. Python语言-面向对象

    2024-07-19 14:20:01       69 阅读

热门阅读

  1. Vue3 完美实现深拷贝

    2024-07-19 14:20:01       22 阅读
  2. 70、Flink 的 DataStream Connector 之 JDBC 连接器详解

    2024-07-19 14:20:01       20 阅读
  3. MySQL简介

    2024-07-19 14:20:01       20 阅读
  4. iOS 左滑返回事件的控制

    2024-07-19 14:20:01       18 阅读
  5. 八段锦1.1.9-冥想1.2.9

    2024-07-19 14:20:01       22 阅读
  6. 邦芒贴士:和领导相处必须牢记的五个教训

    2024-07-19 14:20:01       19 阅读
  7. Binary Search

    2024-07-19 14:20:01       19 阅读
  8. C 语言实例 - 矩阵转换

    2024-07-19 14:20:01       21 阅读
  9. 升级TrinityCore 服务器硬件

    2024-07-19 14:20:01       20 阅读