selenium(3)-鼠标操作、键盘操作

一:鼠标操作

以下操作包含在ActionChains中,所以引用from selenium.webdriver.common.action_chains import ActionChains 

(1)context_click() 右击

right=driver.find_element_by_name('username')  #定位操作的元素
ActionChains(driver).context_click(right).perform()
#ActionChains 用于生成用户的行为;所有的行为都存储在actionchains 对象。通过perform()方法执行存储的行为

(2)double_click() 双击

double=driver.find_element_by_name('username')
ActionChains(driver).double_click(double).perform()

(3)drag_and_drop() 拖动

element = driver.find_element_by_name("username")
target = driver.find_element_by_name("username")
ActionChains(driver).drag_and_drop(element, target).perform()
(4) move_to_element() 鼠标悬停在一个元素上

above=driver.find_element_by_xpath("//div[@class='login_but']/input").click()
ActionChains(driver).move_to_element(above).perform()

(5)click_and_hold() 按下鼠标左键在一个元素上

left=driver.find_element_by_xpath("xxx")
ActionChains(driver).click_and_hold(left).perform()

二:键盘操作

需要引入类

from selenium.webdriver.common.keys import Keys
(1)send_keys(Keys.BACK_SPACE) 删除键(BackSpace)
     send_keys(Keys.SPACE) 空格键(Space)
     send_keys(Keys.TAB) 制表键(Tab)
     send_keys(Keys.ESCAPE) 回退键(Esc)
     send_keys(Keys.ENTER) 回车键(Enter)
     send_keys(Keys.CONTROL,'a') 全选(Ctrl+A)
     send_keys(Keys.CONTROL,'c') 复制(Ctrl+C)
     send_keys(Keys.CONTROL,'x') 剪切(Ctrl+X)
     send_keys(Keys.CONTROL,'v') 粘贴(Ctrl+V)
(2)例如:
driver.find_element_by_id('kw').send_keys(Keys.BACK_SPACE)
time.sleep(3)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
使用 Selenium 实现鼠标键盘操作可以分为以下步骤: 1. 导入必要的库和模块: ```python from selenium import webdriver from selenium.webdriver.common.keys import Keys from selenium.webdriver.common.action_chains import ActionChains ``` 2. 实例化一个浏览器对象: ```python driver = webdriver.Chrome() ``` 3. 打开需要操作的网页: ```python driver.get('http://www.example.com') ``` 4. 定位到需要操作的元素: ```python element = driver.find_element_by_xpath('//input[@id="search"]') ``` 5. 使用鼠标键盘操作: ```python # 输入关键字 element.send_keys('查询关键字') # 模拟回车键 element.send_keys(Keys.ENTER) # 鼠标悬停 ActionChains(driver).move_to_element(element).perform() # 鼠标左键单击 ActionChains(driver).click(element).perform() # 鼠标右键单击 ActionChains(driver).context_click(element).perform() # 模拟键盘操作 ActionChains(driver).key_down(Keys.CONTROL).send_keys('c').key_up(Keys.CONTROL).perform() ``` 完整代码示例: ```python from selenium import webdriver from selenium.webdriver.common.keys import Keys from selenium.webdriver.common.action_chains import ActionChains driver = webdriver.Chrome() driver.get('http://www.example.com') element = driver.find_element_by_xpath('//input[@id="search"]') # 输入关键字 element.send_keys('查询关键字') # 模拟回车键 element.send_keys(Keys.ENTER) # 鼠标悬停 ActionChains(driver).move_to_element(element).perform() # 鼠标左键单击 ActionChains(driver).click(element).perform() # 鼠标右键单击 ActionChains(driver).context_click(element).perform() # 模拟键盘操作 ActionChains(driver).key_down(Keys.CONTROL).send_keys('c').key_up(Keys.CONTROL).perform() driver.quit() ``` 希望这个代码示例可以帮助到你。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值