webdriver常用方法函数

常用定位元素:

1
2
3
4
5
6
7
8
9
10
#id定位
find_element_by_id()
#name定位
find_element_by_name()
#xpath定位
find_element_by_xpath()
#tag定位
find_element_by_tag_name()
#link定位
find_element_by_link_text()

常用元素操作函数:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#清除文本(可能无效)
clear()
#点击
click()
#输入
send_keys()
#提交表单(相当于"回车")
submit()
#元素大小
size
#获取元素的文本
text
#是否可见,返回值是ture or false
is_displayed()
#获取当前页面标题
title
#获取当前页面的url
current_url
#隐式等待
implicitly_wait()

常用鼠标操作函数:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#鼠标左键单击
click(on_element=None)
#鼠标右键单击
contextClick(on_element=None)
#鼠标左键双击
doubleClick(on_element=None)
#点击鼠标左键,不松开
click_and_hold(on_element=None)
#鼠标悬停
move_to_element(on_element=None)
#拖拽到某个元素然后松开
drag_and_drop(source, target)
#拖拽到某个坐标然后松开
drag_and_drop_by_offset(source,xoffset,yoffset)
#鼠标从当前位置移动到某个坐标
move_by_offset(xoffset, yoffset) 
#鼠标移动到某个元素 
move_to_element(to_element)
#移动到距某个元素(左上角坐标)多少距离的位置
move_to_element_with_offset(to_element, xoffset, yoffset)

常用的键盘操作函数:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#依赖包
from selenium.webdriver.common.keys import Keys

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

常用浏览器操作函数:

1
2
3
4
5
6
7
8
9
10
11
12
#最大化浏览器窗口
maximize_window()
#控制浏览器窗口大小
driver.set_window_size(600,800)
#控制浏览器后退到前一页
driver.back()
#控制浏览器前进到后一页
driver.forward()
#刷新
driver.refresh()
#关闭窗口
close()

常用网页操作函数:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#内嵌页面切换(默认可以直接取表单的id 或name属性)
switch_to.frame()
#返回到主页面
driver.switch_to.default_content()
#切换到父级页面
driver.switch_to.parent_frame()
#执行js语句
execute_script("js语句")
#页面截图
save_screenshot("截图.png")
#警告框处理
switch_to_alert()
text:返回所有alert/confirm/prompt中的文字信息
accept():接受现有警告框
dismiss():关闭现有警告框
send_keys(keysToSend):发送文本至警告框

#多窗口切换
switch_to.window()
current_window_handle:当前句柄
window_handles:所有句柄