4、Selenium常用操作之鼠标操作
鼠标操作:
- selenium为我们提供了一个模拟鼠标操作的类ActionChains,它的执行原理,当你调用ActionChains的方法时,不会立即执行,而是会将所有的操作按顺序存放在一个队列里,当你调用perform()方法时,队列中的时间会依次执行
- 第一步:需要导包,有两种方式,如下操作
- from selenium.webdriver.common.action_chains import ActionChains
- from selenium.wendriver import ActionChains
- 第二步:代码编写
- 链式写法
- 分布式写法
- ac.鼠标操作1(页面元素)
- ac.鼠标操作2(页面元素)
- ac.鼠标操作3(页面元素)
- ...
- 代码示例
1 from selenium import webdriver 2 from selenium.webdriver import ActionChains 3 4 driver = webdriver.Chrome() 5 6 driver.get('https://www.baidu.com') 7 8 bd_input = driver.find_element_by_id('kw') 9 10 # 方式一:百度输入框中点击鼠标右键 11 ActionChains(driver).context_click(bd_input).perform() 12 13 # 方式二:百度输入框点击右键 14 ac = ActionChains(driver) 15 ac.context_click(bd_input) 16 ac.perform()
- 鼠标常用操作及代码示例
- 模拟鼠标单击且按住不放:click_and_hold(on_element=None)
- 模拟鼠标双击:double_click(on_element=None)
- 模拟鼠标右击:context_click(on_element=None)
- 模拟鼠标拖拽:drag_and_drop(source,target)
- 模拟将鼠标拖拽到目标位置:drag_and_drop(source,xoffset,yoffset)
- 按住某个键,实现快捷键操作:key_down(value,on_element=None)
- 松开某个键:key_up(value,on_element=None)
- 模拟鼠标移到指定元素:move_to_element(to_element)
- 移动鼠标到某个坐标:move_to_element_with_offset(to_element,xoffset,yoffset)
- 执行鼠标操作:perform()
- 释放按下的鼠标:release(on_element=None)
浙公网安备 33010602011771号