ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

selenium(3)-针对鼠标的操作

2020-06-19 10:02:19  阅读:317  来源: 互联网

标签:针对 鼠标 perform selenium driver element 拖动 chains


背景

用selenium做自动化,有时候会遇到需要模拟鼠标操作才能进行的情况,比如单击、双击、点击鼠标右键、拖拽等等。

而selenium给我们提供了一个类来处理这类事件-----------ActionChains

 

有哪些鼠标操作呢

  • 执行操作
  • 左键,右键单击双击
  • 鼠标悬停到元素,漂移处
  • 长按
  • 拖动

执行操作

perform() 方法

主要是调用其他操作方法后,都要再次调用这个方法,表示执行某个鼠标操作,后面会有例子

 

左键右键,单击双击

 1 from selenium.webdriver import ActionChains
 2 from selenium import webdriver
 3 
 4 driver = webdriver.Chrome(r"H:/cci/data/chromedriver.exe")
 5 
 6 # 创建实例
 7 chains = ActionChains(driver)
 8 
 9 # 访问网址
10 driver.get("禅道的url")
11 
12 # 登录按钮
13 username = driver.find_element_by_id("account")
14 login = driver.find_element_by_id("submit")
15 password = driver.find_element_by_name("password")
16 
17 # 左键点击
18 chains.click(username).perform()
19 
20 # 右键点击
21 chains.context_click(username).perform()
22 
23 # 双击
24 chains.double_click(password).perform()

 

鼠标悬停到元素,指定偏移处

1 # 悬停到登录按钮
2 chains.move_to_element(login_btn).perform()
3 
4 # 悬停到指定偏移量
5 chains.move_to_element_with_offset(login_btn, 2, 2).perform()

知识点

move_to_element_with_offset() 是先找到元素,再根据元素位置偏移指定偏移量

 

长按

1 # 长按
2 chains.click_and_hold(login_btn).perform()

 

拖动

1 # 拖动到某个元素后松开
2 chains.drag_and_drop(source=username, target=password)
3 
4 # 拖动到某个坐标值
5 chains.drag_and_drop_by_offset(source=username, xoffset=20, yoffset=20)

知识小节

  • drag_and_drop 将源元素拖动到目标元素处
  • drag_and_drop_by_offset 将源元素拖动到指定的坐标

标签:针对,鼠标,perform,selenium,driver,element,拖动,chains
来源: https://www.cnblogs.com/xinhua19/p/13156740.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有