python3.5+selenium3.4自动化测试7_selenium的Webdriver_API整理(下)

7.设置等待时间

#导入time包 
import time

#添加智能等待 
driver.implicitly_wait(30) 

#添加固定休眠时间 
time.sleep(5)



#导入WebDriverWait 包 
from selenium.webdriver.support.ui import WebDriverWait 

#详细格式如下:
WebDriverWait(driver,timeout,poll_frequency=0.5,ignored_exceptions=None)

driver - WebDriver 的驱动程序(Ie,Firefox,Chrome 或远程)

timeout - 最长超时时间,默认以秒为单位

poll_frequency- 休眠时间的间隔(步长)时间,默认为 0.5 秒

ignored_exceptions - 超时后的异常信息,默认情况下抛 NoSuchElementException 异常。


element = WebDriverWait(driver, 10).until(lambda x: x.find_element_by_id(“someId”)) is_disappeared = WebDriverWait(driver, 30, 1, (ElementNotVisibleException)). until_not(lambda x: x.find_element_by_id(“someId”).is_displayed()) 

8.定位frame中的元素

driver.switch_to.frame("mainscreen")#切入到id="mainscreen"的嵌套中
driver.switch_to.default_content()#这句话是退出原来的嵌套回到原来的主文档
driver.switch_to.parent_frame()返回上一级frame

9.浏览器多窗口

#获得当前窗口 
nowhandle=driver.current_window_handle
#获得所有窗口
allhandles=driver.window_handles

for handle in allhandles:
    if handle != nowhandle: 
        driver.switch_to_window(handle) #到最后窗口口

        driver.close()#关闭最后窗口

10.alert/confirm/prompt 处理

driver.switch_to_alert().text #获取网页上的警告信息
driver.switch_to_alert().accept #接收警告信息 
driver.switch_to_alert().dismiss #取消对话框(如果有的话) 
driver.switch_to_alert().send_keys("xx") #输入值(如果有的话) 

11.下拉框处理

from selenium.webdriver.support.ui import Select
Select(driver.find_element_by_id('language')).select_by_value(Value)

12.文件上传

driver.find_element_by_name("file").send_keys('D:\\selenium_use_case\upload _file.txt') #,send_keys()发送一个本地的文件路径。从而达 到上传文件的目的。

13.cookie消息处理

driver.get_cookies() # 获得所有cookie信息
driver.get_cookie(name)# 返回特定 name 有 cookie 信息
driver.add_cookie({'name':'key-aaaaaaa', 'value':'value-bbbb'})#向cookie的name 和value添加会话信息。 
driver.delete_cookie("CookieName") 
driver.delete_cookie("CookieName") #删除特定(部分)的 cookie 信息
driver.delete_all_cookies()# 删除所有cookie 

—————————————————–分割线—————————————————–

用实际用例代码长期更新,介绍selenium使用中的知识小点,希望大家关注

关注微信公众号:

这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

无敌轻车

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值