python中返回上⼀步操作的代码_Python语⾔-
seleniumwebdriver操。。。
1、控制浏览器⼤⼩
set_window_size() 设置浏览器⼤⼩ 该⽅法有两个参数,第⼀个参数是宽,第⼆个是⾼
maximize_window() 设置浏览器全屏显⽰,⽆参数
chrome⾕歌浏览器在控制浏览器⼤⼩时,报错 : unknown error: cannot get automation extension
解决办法:将chrome的webdriver驱动更新到最新的
2、控制浏览器后退、前进
back() 返回到上⼀个页⾯
forward() 前进到下⼀个页⾯
3、模拟浏览器刷新
refresh() 刷新当前页⾯
4、⼏个简单元素操作
clear() 清除⽂本
send_keys(*value) 模拟按键输⼊
click() 单击元素
5、WebElement接⼝常⽤⽅法
submit() 回车操作
size 返回元素尺⼨
text 获取元素⽂本
get_attribute(name) 获取属性值
is_displayed 设置该元素是否⽤户可见
6、⿏标事件 ActionChains
perform() 执⾏所有ActionChains中存储⾏为
context_click() 右击
double_click() 双击
drag_and_drop() 拖动
move_to_element() ⿏标悬停
7、键盘事件 Keys()类
send_keys() ⽅法
常⽤的键盘操作:
send_keys(Keys.BACK_SPACE) 删除键(BackSpace)
send_keys(Keys.SPACE) 空格键(Space)
send_keys(Keys.TAB) 制表键(Tab)
send_keys(Keys.ESCAPE) 回退键(Esc)
send_keys(Keys.ENTER) 回车键(Enter)
send_keys(Keys.CONTROL,'a') 全选(Ctrl+A)
send_keys(Keys.CONTROL,'c') 复制(Ctrl+C)
send_keys(Keys.CONTROL,'x') 剪切(Ctrl+X)
send_keys(Keys.CONTROL,'v') 粘贴(Ctrl+V)
send_keys(Keys.CONTROL,'z') 回退(Ctrl+Z)
win10滚动条设置send_keys(Keys.F1) 键盘F1
8、获取验证信息
driver.tittle ⽤于获取当前页⾯的标题
driver.current_url ⽤户获得当前页⾯的url
9、设置元素等待
(1)WebDriverWait类
WebDriverWait类是由WebDriver提供的等待⽅法,在设置时间内,默认每隔⼀段时间检测⼀次当前元素是否存在,如果超过设置时间检测不到则抛出异常
element = WebDriverWait(driver, 5, 0.5).until(EC.presence_of_element_located((By.ID, "kw")))
WebDriverWait(driver,timeout,poll_frequency=0.5,ignored_exceptions=None)
Driver:WebDriver的驱动程序
Timeout:最常超是时间,默认以秒为单位
Poll_frequency:休眠时间的间隔时间,默认为0.5秒
Ignored_exception:超时后的异常信息,默认情况下抛NoSuchElementException异常。
WebDriverWait():⼀般由until()或until_not()⽅法配合使⽤,下⾯是until()和until_not()⽅法的说明
Until(method,message=’’):调⽤该⽅法提供的驱动程序作为⼀个参数,直到返回值为True。
Until_not(method,message=‘’):调⽤该⽅法提供的驱动程序作为⼀个参数,直到返回值为false。
通过as关键词对expected_conditons重名为EC,并调⽤presence_of_element_located()判断元素是否存在。
(2)、判断元素是否可见,查元素是否存在
is_displayed()
(3)、隐式等待
等待⼀定的时长,看元素是否加载出来,如果在规定的时间内加载到了就不⽤再等下去,如果在规定时间内未加载出元素出来,就抛出异常(给予提⽰)
implicitly_wait() 默认设置为0
(4)、sleep休眠⽅法
10、多表单切换
frame/iframe表单嵌套页⾯,通过switch_to.frame()⽅法将当前定位的主题切换为frame/iframe表单的内嵌页⾯中。switch_to.frame()默认可以直接取表单中的id或name,如果frame中没有id或name属性,可以通过xpath⽅式定位
switch_to.frame():切换进⼊到某个表单
switch_to.parent_content():跳出当前⼀级表单,默认是跳出最近的switch_to.frame()⽅法
switch_to.default_content():跳回最外层的页⾯
frame.html
frame.py
11、多窗⼝切换
current_windows_handle:获取当前窗⼝的句柄
windows_handles:获取当前打开的所有窗⼝的句柄
switch_to.window():切换到相应的窗⼝,与switch_to.frame()类似
12、警告框处理
switch_to_alert():使⽤switch_to_alert()⽅法定位到alert/confirm/prompt,然后使⽤text/accept/dismiss/send_keys⽅法进⾏操作
text:返回alert/confirm/prompt中的⽂字信息
accept():接受现有警告框
dismiss():解散现有警告框
send_keys(keyToSend):发送⽂本⾄警告框。keyToSend将⽂本发送⾄警告框。
例⼦中还⽤到了ActionChains类所提供的move_to_element()⿏标悬停的使⽤,将⿏标停在“设置”上,然后在弹出的下拉菜单中点
击“搜索设置”进⾏接下来的操作。
13、上传⽂件
(1)通过send_keys实现上传
把上传⽂件功能,当做是⼀个输⼊框,传⼊⽂件地址
(2)通过AutoIt实现上传功能(这个⽅法不太好⽤)
ControlFocus():⽤于识别windows窗⼝
WinWait():等待窗⼝的显⽰
ControlSetText():⽤于向“⽂件名”输⼊框内输⼊本地上传⽂件的路径

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。