python+selenium(中级)

本文详细介绍了WebDriver中如何使用ActionChains类进行鼠标操作,包括右击、双击、拖动和悬停等,以及如何利用Keys类进行键盘操作,如发送删除键、空格键等。同时,文章还讲解了元素等待的概念,包括显式等待和隐式等待的使用场景和方法。

主要记录webdriver的鼠标、键盘事件

WebDriver操作鼠标方法

在WebDriver中将操作鼠标的方法封装在ActionChains类中
1. context_click()            右击 --> 此方法模拟鼠标右键点击效果
2. double_click()            双击 --> 此方法模拟双标双击效果
3. drag_and_drop()            拖动 --> 此方法模拟双标拖动效果
4. move_to_element()        悬停 --> 此方法模拟鼠标悬停效果
5. perform()                执行 --> 此方法用来执行以上所有鼠标方法

为了更好的学习其他方法,我们先学习perform()执行方法,因为所有的方法都需要执行才能生效

代码实现关键点分析

1. 导包:from selenium.webdriver.common.action_chains import ActionChains
2. 实例化ActionChains对象:Action=ActionChains(driver)
3. 调用右键方法:element=Action.context_click(username)
4. 执行:element.perform()

WebDriver操作键盘方法

 在WebDriver中将操作鼠标的方法封装在Keys类中

导包:from selenium.webdriver.common.keys import Keys

常用的键盘操作

1. send_keys(Keys.BACK_SPACE)删除键(BackSpace) 
2. send_keys(Keys.SPACE)空格键(Space) 
3. send_keys(Keys.TAB)制表键(Tab) 
4. send_keys(Keys.ESCAPE)回退键(Esc) 
5. send_keys(Keys.ENTER)回车键(Enter) 
6. send_keys(Keys.CONTROL,'a') 全选(Ctrl+A) 
7. send_keys(Keys.CONTROL,'c')复制(Ctrl+C)

元素等待

为什么要设置元素等待?

1. 由于网络速度原因
2. 电脑配置原因
3. 服务器处理请求原因

元素等待的类型:1.显式等待 2.隐式等待 

显式等待---》作用域:单个元素有效

               WebDriverWait(driver,timeout,poll_frequency=0.5).until(method)

                 #driver :浏览器对象

                 #timeout:超时的时长,单位秒

                 #poll_frequency=0.5  :检测间隔时间,默认0.5秒

                 #until(method):直到...时

隐式等待---》作用域:全局元素有效

             driver.implicity_wait(timeout)

            #timeout:为等待的最大时长,单位秒

           #

如果定位某一元素定位失败,那么就会触发隐式等待有效时长,如果在指定时长内加载完毕,则继续执行,否则
抛出NoSuchElementException异常,如果元素在第一次就定位到则不会触发隐式等待时长;

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值