python3+selenium入门08-鼠标事件
使用click()可以模拟鼠标的左键点击事件,现在的web页面中有很多其他的鼠标交互方式,比如鼠标右击、双击、悬停、鼠标拖放等功能。在WebDriver中,将这些关于鼠标操作的方法封装在ActionChains类。
导入ActionChains类
from selenium.webdriver.common.action_chains import ActionChains
ActionChains类常用的方法:
context_click():鼠标右键
double_click():鼠标双击
drag_and_drop():鼠标拖放
move_to_element():鼠标悬停
perform():执行ActionChains类中的行为,就是上面那些功能,最后都需要添加这个方法来执行
一般使用方法:ActionChains(浏览器实例).上面操作的方法(要操作的元素).perform()
鼠标右键
from selenium.webdriver.common.action_chains import ActionChains
from selenium import webdriver
dr = webdriver.Chrome()
dr.get('https://www.baidu.com')
xw = dr.find_element_by_link_text('新闻')
ActionChains(dr).context_click(xw).perform()
应该会在百度首页新闻那里右键
鼠标悬停
from selenium.webdriver.common.action_chains import ActionChains
from selenium import webdriver
dr = webdriver.Chrome()
dr.get('https://www.baidu.com')
sz = dr.find_element_by_link_text('设置')
ActionChains(dr).move_to_element(sz).perform()
应该会在百度首页设置那里悬停,要点悬停下面的按钮,应该要加个等待时间的设置。
鼠标双击和上面样例差不多。
鼠标拖放的需要传入两个元素,在第一个元素上按住鼠标左键,拖动至第二个元素上释放
python3+selenium入门08-鼠标事件的更多相关文章
- python3+selenium入门09-键盘事件
Keys类提供了键盘上几乎所有按键的方法.通过send_keys()方法不仅可以用来模拟键盘输入,还可以用它来模拟键盘上的按键.包括组合键,比如Ctrl+a等 需要导入Keys类 from selen ...
- Selenium WebDriver 中鼠标事件(全)
Selenium WebDriver 中鼠标事件(全) 鼠标点击操作 鼠标点击事件有以下几种类型: 清单 1. 鼠标左键点击 Actions action = new Actions(driv ...
- python3+selenium入门15-执行JavaScript
有时有些功能需要通过js来执行,比如拖动浏览器的滚动条.通过execute_script()方法可以执行js的代码 window.scrollTo()可以传两个参数,第一个参数是下方滚动条的位置,第二 ...
- python+selenium三:鼠标事件与键盘事件
1.鼠标事件:# 每个模拟事件后需加.perform() 才会执行# context_click() 右击# double_click() 双击# drag_and_drop(source, targ ...
- Selenium3 + Python3自动化测试系列四——鼠标事件和键盘事件
一.鼠标事件 在 WebDriver 中, 将这些关于鼠标操作的方法封装在 ActionChains 类提供. ActionChains 类提供了鼠标操作的常用方法. ActionChains 类的成 ...
- Selenium WebDriver 中鼠标事件
鼠标点击操作 鼠标点击事件有以下几种类型: 清单 1. 鼠标左键点击 Actions action = new Actions(driver);action.click();// 鼠标左键在当 ...
- Selenium+Java(九)Selenium键盘与鼠标事件
一.键盘事件 ctrl+a driver.findElement(By.id("kw")).sendKeys(Keys.CONTROL, "a"); ctrl+ ...
- Selenium入门12 鼠标和键盘事件
1 鼠标 集成在webdriver.ActionChains.单击.双击.右击.拖放等等. 2 键盘 引入包from selenium.webdriver.common.keys import K ...
- python3+selenium入门01-环境搭建
作为一个测试,在最近两年应该有明显的感觉.那就是工作变的难找,要求变的高了,自动化测试,性能测试等.没有自动化测试能力,只会点点点工作难找不说,工资也不高.所以还是要学习一些技术.首先要学习一门编程语 ...
随机推荐
- shell常见文本处理。(awk 替换换行符等)
1 文件里有如下行,我想将每行的回车符替换为逗号,并将所有行合并到一行,用awk或sed怎么写啊TOP_COLUMNTOP_MESSAGETOP_OPTIONSTOP_TOPICTOP_VOTETOP ...
- Spring Boot笔记四:日志框架介绍
我是一名程序员,我喜欢写System.out.println来打印一些重要的信息...后来我学了面向对象,我把这些输出语句整合到了一个工具类里面,可以打印,也可以保存日志. 我是一名积极思考的程序员, ...
- python 函数动态参数,名称空间,global,nonlocal
##################################总结######################################动态参数 *args:位置参数动态传参,接收到的是元 ...
- Hadoop记录-Hadoop集群添加节点和删除节点
1.添加节点 A:新节点中添加账户,设置无密码登陆 B:Name节点中设置到新节点的无密码登陆 C:在Name节点slaves文件中添加新节点 D:在所有节点/etc/hosts文件中增加新节点(所有 ...
- IDEA之debug的坑
IDEA是一款火热的开发工具.debug谁都会,很简单?NO 一次不正常的关机,导致第二条上班debug失效,浪费两个小时.特做此记录. 1.如下图点击View Breakpoints进入可以到你设置 ...
- Uncaught DOMException: Failed to construct 'WebSocket': The URL '/qibao/websocket/service1000' is invalid.
出现这个问题是构造 WebSocket失败了. js代码改成 //实现化WebSocket对象,指定要连接的服务器地址与端口 建立连接//等同于socket = new WebSocket(path+ ...
- Linux日志痕迹清除
#coding=utf-8 import os import sys import subprocess def Clear_The_Log(host): logs = ["/var/log ...
- Java8新特性 重复注解与类型注解
import java.lang.annotation.Repeatable; import java.lang.annotation.Retention; import java.lang.anno ...
- 使用jedis客户端连接redis,单机版和集群版
单机版 1.入门实例 @Test public void testJedis(){ //创建一个jedis对象,需要指定服务的ip和端口号 Jedis jedis=new Jedis("19 ...
- Mac pro 装双系统 参考
15岁觉得游泳难,放弃游泳,到18岁遇到一个你喜欢的人约你去游泳,你只好说“我不会耶”.18岁觉得英文难,放弃英文,28岁出现一个很棒但要会英文的工作,你只好说“我不会耶”.人生前期越嫌麻烦,越懒得学 ...