selenium_webdriver(python)鼠标操作详解

  1. #coding=utf-8  
  2. from selenium import webdriver  
  3. from selenium.webdriver.common.keys import Keys   
  4. #要使用鼠标操作,首先需要引入ActionChains包    
  5. from selenium.webdriver.common.action_chains import ActionChains    
  6. import time  
  7.   
  8. #1、鼠标右键操作  
  9. driver = webdriver.Ie()  
  10. driver.get("http://www.mxvpnjsq.cc/member.php?mod=logging&action=login")  
  11. #输入用户名、密码,回车登陆  
  12. driver.find_element_by_name("username").send_keys("1290800466")    
  13. driver.find_element_by_name("username").send_keys(Keys.TAB)     
  14. driver.find_element_by_name("password").send_keys("15866584957")   
  15. driver.find_element_by_name("password").send_keys(Keys.ENTER)  
  16. time.sleep(5)  
  17. #定位到要右击的元素  
  18. qqq=driver.find_element_by_id("mn_Nfb8a")  
  19. #对定位到的元素执行鼠标右键操作  
  20. ActionChains(driver).context_click(qqq).perform()  
  21. time.sleep(3)  
  22. #按 下 键,进入右键菜单第一个选项  
  23. driver.find_element_by_id("mn_Nfb8a").send_keys(Keys.DOWN)   
  24. #直接按回车或单击进入  
  25. #driver.find_element_by_id("mn_Nfb8a").send_keys(Keys.ENTER)  
  26. #鼠标单击操作  
  27. driver.find_element_by_id("mn_Nfb8a").click()  
  28. time.sleep(3#休眠3秒  
  29. driver.close()  
  30.   
  31. #2、鼠标双击操作  
  32. driver = webdriver.Ie()  
  33. driver.get("http://www.mxvpnjsq.cc/space-uid-269119.html")  
  34. #定位到要双击的元素  
  35. qqq =driver.find_element_by_id("spacename")  
  36. #对定位到的元素执行鼠标双击操作  
  37. ActionChains(driver).double_click(qqq).perform()  
  38. time.sleep(3#休眠3秒  
  39. driver.close()  
  40.   
  41. #3、鼠标拖放操作  
  42. driver = webdriver.Ie()  
  43. driver.get("http://www.mxvpnjsq.cc/space-uid-269119.html")  
  44. time.sleep(5)  
  45. #定位元素的原位置  
  46. element = driver.find_element_by_id("domainurl")  
  47. #定位元素要移动到的目标位置  
  48. target = driver.find_element_by_id("a_poke_269119")  
  49. #执行元素的移动操作  
  50. ActionChains(driver).drag_and_drop(element, target).perform()  
  51. #鼠标拖放过程详解:首先是鼠标点击并按住element元素,然后执行鼠标移动动作,  
  52. #移动到 target 元素位置或者是 (xOffset, yOffset) 位置,再执行鼠标的释放动作  
  53. #如上所示的目标位置既可以用某一元素位置表示,也可用坐标表示  
  54. time.sleep(5#休眠3秒  
  55.   
  56. driver.quit()  


ActionChains 类鼠标操作的常用方法:

context_click() 右击
double_click() 双击
drag_and_drop() 拖动
move_to_element() 鼠标悬停在一个元素上
click_and_hold() 按下鼠标左键在一个元素上


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值