鼠标操作
from selenium.webdriver.common.action_chains import ActionChains
通过ActionChains 类来完成鼠标操作
主要操作流程:
1.存储鼠标操作
2.perform()执行鼠标操作

常见的鼠标操作
double_click 双击
context_clik 右键操作
drag_and_drop 拖拽操作。 左键按住拖动某一个元素到另外一个元素,然后释放按键
move_to_element() 鼠标悬停

from selenium import webdriver
from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.support import expected_conditions as Ec
from selenium.webdriver.common.by import By
from selenium.webdriver.common.action_chains import ActionChains # 鼠标操作的类 driver = webdriver.Chrome() driver.get("https://www.baidu.com/")
# 窗口最大化
driver.maximize_window()
# 等待元素出现
WebDriverWait(driver,20).until(Ec.visibility_of_element_located((By.XPATH,'//div[@id="u1"]//a[text()="设置"]')))
# 鼠标悬浮到设置按钮上
web = driver.find_element_by_xpath('//div[@id="u1"]//a[text()="设置"]')
ac = ActionChains(driver)
ac.move_to_element(web).perform()
# 点击操作
driver.find_element_by_xpath('//div[@id="u1"]//a[text()="设置"]').click()
# 等待元素出现
WebDriverWait(driver,20).until(Ec.visibility_of_element_located((By.XPATH,'//a[text()="高级搜索"]')))
# 点击高级搜索
driver.find_element_by_xpath('//a[text()="高级搜索"]').click()

最新文章

  1. 使用PM2将Node.js的集群变得更加容易
  2. sqlserver实现数据库读写分离介绍
  3. C++ exe调用dll文件
  4. EBS R12重启后无法进入登录页面
  5. 编译x264 for ios
  6. MyBatis传入参数为集合 list 数组 map写法
  7. unity3d教程资源
  8. Round Numbers
  9. Linux显示所有可更新的软件清单命令
  10. 小技巧,把Markdown文本发布到微信公众号文章
  11. outlook2016用Exchange轻松绑定腾讯企业邮箱
  12. Robot Framework使用For循环
  13. CKEditor 5
  14. oracle 日期时间函数
  15. 希尔排序之Java实现
  16. Sqlserver存储过程生成日期维度
  17. Go基础---->go的基础学习(五)
  18. node.js利用express连接mysql数据库
  19. yii2 basic 简洁安装教程
  20. time、random以及序列化模块

热门文章

  1. 程序员还在用360,腾讯电脑管家清理注册表,清理垃圾?只能说你太low
  2. JDK 配置环境变量
  3. 【Hexo】使用Hexo+github pages+travis ci 实现自动化部署
  4. 用js写出一个漂亮的单选框选中效果
  5. Redis服务器和客户端的通信
  6. thrift的使用
  7. 海外网站如何通过代理IP进行采集?
  8. 小程序-for循环遍历的使用
  9. python 基础知识4 - 字典
  10. 数据库当中删除数据后主键id不连续的问题