from selenium.webdriver import ActionChains

1、鼠标点击

click:鼠标左击
double_click:鼠标双击
context_click:鼠标右击

btn = driver.find_element_by_id('su')
# 第一步:创建一个鼠标操作的对象
action = ActionChains(driver)
# 第二步:进行点击动作(事实上不会进行操作,只是添加一个点击的动作)
action.click(btn)
# 第三步:执行动作
action.perform()

2、鼠标移动

driver = webdriver.Chrome()
driver.get('https://www.baidu.com/')
driver.implicitly_wait(5)# 定位设置元素
set_ele = driver.find_element_by_xpath("//div[@id='u1']//a[text()='设置']")
# 第一步:创建一个鼠标操作的对象
action = ActionChains(driver)
# 第二步:进行移动
action.move_to_element(set_ele)
# 第三步:执行动作
action.perform()# 三行代码写成一行:支持链式调用
ActionChains(driver).move_to_element(set_ele).perform()# 等待高级设置可点击
WebDriverWait(driver,5,0.2).until(EC.element_to_be_clickable((By.XPATH,"//a[text()='高级搜索']"))
).click()

3、鼠标滑动

# 选择拖动滑块的节点
sli_ele = driver.find_element_by_id('tcaptcha_drag_thumb')
# ------------鼠标滑动操作------------
action = ActionChains(driver)
# 第一步:在滑块处按住鼠标左键
action.click_and_hold(sli_ele)
# 第二步:相对鼠标当前位置进行移动
action.move_by_offset(100,0)
# 第三步:释放鼠标
action.release()
# 执行动作
action.perform()

4、鼠标在一个元素上拖动到另一个元素

s = WebDriverWait(driver, 30, 0.5).until(EC.visibility_of_element_located((By.ID, 'draggable'))
)
t = WebDriverWait(driver, 30, 0.5).until(EC.visibility_of_element_located((By.ID, 'droppable'))
)
# ------------鼠标滑动操作------------
action = ActionChains(driver)
# 第一步:拖动元素
action.drag_and_drop(s, t)
# 执行动作
action.perform()

参考:https://www.cnblogs.com/erchun/p/12906324.html

selenium——鼠标操作ActionChains:点击、滑动、拖动相关推荐

  1. web ui自动化之模拟鼠标操作 - ActionChains

    文章目录 前言 ActionChains类方法介绍 1.执行所有存储的操作 - perform() 2.鼠标单击 - click() 3.点击鼠标左键,不松开 - click_and_hold() 4 ...

  2. selenium鼠标操作 包含右击和浮层菜单的选择

    感谢http://www.cnblogs.com/tobecrazy/p/3969390.html  博友的分享 最近在学习selenium的一些鼠标的相关操作 自己在百度的相关操作代码 /** * ...

  3. 实现div跟随鼠标移动、点击、拖动而产生的变化

    代码一:实现鼠标能够拖动div <!DOCTYPE html> <html><head><meta charset="UTF-8"> ...

  4. 爬虫Spider 08 - chromedriver设置无界面模式 | selenium - 键盘操作 | 鼠标操作 | 切换页面 | iframe子框架 | scrapy框架

    文章目录 Spider 07回顾 cookie模拟登陆 三个池子 selenium+phantomjs/chrome/firefox Spider 08 笔记 chromedriver设置无界面模式 ...

  5. Flutter 中文文档:点击、拖动和其他手势

    这个章节将会讲解如何监听和响应 Flutter 的手势操作 gestures.典型的手势操作包括点击.拖动和缩放. Flutter 中的手势有两个不同的层次:第一层是原始的指针指向事件,描述了屏幕上由 ...

  6. UI自动化(四)-鼠标操作

    鼠标操作 actionChains 操作+执行 点击 click 双击 double_click 悬浮 move_to_element 右键 context_click 拖曳 drag_and_dro ...

  7. python selenium鼠标点击_python selenium鼠标键盘操作(ActionChains)

    用selenium做自动化,有时候会遇到需要模拟鼠标操作才能进行的情况,比如单击.双击.点击鼠标右键.拖拽等等.而selenium给我们提供了一个类来处理这类事件--ActionChains sele ...

  8. python模拟鼠标拖动_Python+Selenium自动化篇-6-模拟鼠标操作

    在webdriver中,鼠标的一些操作如:双击.右击.悬停.拖动等都被封装在ActionChains类中,我们只用在需要使用的时候,导入这个类就可以了. 0.ActionChains类提供的鼠标常用方 ...

  9. selenium中鼠标操作:ActionChains类

    一.ActionChains类的介绍 ActionChains模拟鼠标操作的常用方法.使用click()方法可以进行鼠标的单击操作,但是鼠标操作还包括:双击.右击.悬停.鼠标拖动等功能,所以,Acti ...

最新文章

  1. Cakephp事件机制尝鲜
  2. 交换网络中的sniffer讨论-基于交换网络的ARP spoofing sniffer
  3. 初中数学分几个模块_北京版初中数学:8大模块,59个必考易错知识点大集合,一定要注意!...
  4. PPT图片虚化效果要怎样实现?
  5. 有了这些组件和模板,天下没有难做的移动端驾驶舱
  6. [论文阅读笔记]DeepFool: a simple and accurate method to fool deep neural networks
  7. Andriod1.0无法被识别,更新为安卓 ADB 驱动
  8. 来自30岁女程序员的自我唤醒
  9. 安装PHP7.4找不到包error: Package requirements (oniguruma) were not met错误
  10. nextjs 基于 isomorphic-unfetch 封装自己的请求库
  11. 2021周记11:慢慢自律和追剧
  12. 敏捷项目用户故事地图
  13. Unit Test(UT)单元测试
  14. 42步进电机拆解步距角推导
  15. 网络相关基础知识总结(一)吞吐量测试吞吐量与带宽区别
  16. 华工 计算机网络 第二次 作业,华工网络教育计算机网络作业及答案
  17. 《学成在线 》 网站制作源码及总结html+css
  18. 17个最好用的iPhone数据恢复工具【2019更新】
  19. phpnow切换php,PHPNOW如何升级PHP
  20. eclipse jee配置tomcat

热门文章

  1. “WGT安装包中manifest.json文件不存在”与解决办法
  2. 关于TF变换的学习笔记(二)
  3. 基于自定义注解校验入参Model中的必传字段
  4. ETH may face a big rise because of this news
  5. 轨迹误差评估指标[APE/RPE]和EVO[TUM/KITTI]
  6. 鸿蒙系统能装CAD吗,64位cad能装到32位的系统上吗
  7. 利用OVITO软件绘制团簇构型 (ICO, BCC, HCP, FCC及SC 多面体)
  8. “墨菲定律”、“帕金森定理”和“彼德原理”
  9. 有序线性表的有序合并
  10. 业精于勤荒于嬉-行成于思而毁于随