Driver 对象
我把整个 Driver 的对象 所有函数的都写了出来,好与不好希望能帮忙点一赞,谢谢了!
基本属性
属性名称 | 作用介绍 |
---|
page_source | 获取网页源代码 |
title | 获取窗口标题 |
window_handles | 获得当前所有浏览器打开的所有窗口。 |
session_id | 获取session_id |
capabilities | 浏览器基本信息 |
浏览器窗口
作用介绍 | 关闭浏览器窗口 |
---|
方法名称 | close |
参数介绍 | 无 |
样式代码 | driver.close () |
作用介绍 | 关闭浏览器进程 |
---|
方法名称 | quit |
参数介绍 | 无 |
样式代码 | driver.quit() ; |
作用介绍 | 浏览器向前(点击向前按钮) |
---|
方法名称 | forward |
参数介绍 | 无 |
样式代码 | driver.forward(): |
作用介绍 | 浏览器向后(点击向后按钮) |
---|
方法名称 | back |
参数介绍 | 无 |
样式代码 | driver. Back() |
作用介绍 | 浏览器刷新(点击刷新按钮) |
---|
方法名称 | refresh |
参数介绍 | 无 |
样式代码 | driver.refresh(): |
作用介绍 | 最大化;最小化;全屏浏览器窗口。 |
---|
方法名称 | maximize_window ;minimize_window;fullscreen_window |
参数介绍 | 无 |
样式代码 | driver.maximize_window(): |
作用介绍 | 设置界面加载超时时间 |
---|
方法名称 | set_page_load_timeout(time) |
参数介绍 | time 秒钟:intger |
样式代码 | driver. set_page_load_timeout(30) |
作用介绍 | 设置浏览器窗口大小。 |
---|
方法名称 | set_window_size |
参数介绍 | 宽 intger;高 intger |
样式代码 | driver.set_window_size(500,650): |
作用介绍 | 获取当前窗口的长和宽。 |
---|
方法名称 | get_window_size |
参数介绍 | 无 |
样式代码 | driver.get_window_size(): |
作用介绍 | 获取当前窗口坐标。 |
---|
方法名称 | get_window_position(): |
参数介绍 | 无 |
样式代码 | driver. get_window_position(): |
作用介绍 | 截取当前窗口。 |
---|
方法名称 | get_screenshot_as_file |
参数介绍 | FileName 不存在的文件地址:String |
样式代码 | driver.get_screenshot_as_file(‘D:/selenium/image/baidu.jpg’) |
窗口,frame 切换
作用介绍 | 切换到新frame (同一窗口)。 |
---|
方法名称 | switch_to_frame(id、name、index、webelement ) |
参数介绍 | id:Frame 标签的ID 属性 name:Frame 标签的name属性 index:Frameset 下面多个frame顺序。 webelement:Driver.Find* 出来的对象。 |
样式代码 | 调用时只填写其中一个参数即可 driver.switch_to_frame(id、name、index、webelement ) |
作用介绍 | 跳出当前一级表单。该方法默认对应于离它最近的switch_to.frame()方法。 |
---|
方法名称 | switch_to.parent_content() |
参数介绍 | 无 |
样式代码 | driver.switch_to.parent_content() |
作用介绍 | 跳回最外层的页面。 |
---|
方法名称 | switch_to.default_content |
参数介绍 | 无 |
样式代码 | driver.switch_to.default_content() |
作用介绍 | 切换到新窗口。 |
---|
方法名称 | switch_to_window |
参数介绍 | window_name |
样式代码 | Driver.switch_to.window(window_handles()[len(window_handles()) – 1 ]) |
处理alert,confirm,prompt
作用介绍 | 警告框处理。处理JavaScript所生成的alert,confirm,prompt |
---|
方法名称 | driver.switch_to.alert
|
参数介绍 | 无,页面无弹窗测会报错 |
样式代码
driver.switch_to.alert()
text()
accept()
dismiss()
send_keys()
处理等待时间
作用介绍 | 隐式等待,通过一定的时长等待页面上某一元素加载完成。 |
---|
方法名称 | implicitly_wait(M) |
参数介绍 | 秒钟M |
样式代码 | driver.implicitly_wait(10) #等待10秒 |
备注: | 若提前定位到元素,则继续执行。若超过时间未加载出,则抛出NoSuchElementException异常。 |
作用介绍 | 强制等待,python 中的线程休眠。 |
---|
方法名称 | Sleep(time) |
参数介绍 | time |
样式代码 | from time import sleep sleep(5) |
作用介绍 | 隐形等待一个元素加载 |
---|
方法名称 | Sleep(time) |
参数介绍 | time |
样式代码 | element = WebDriverWait(driver, time).until(get_element_def((Parameter_By, Parameter_Value))) |
处理cookie、session
作用介绍 | 返回字典的key为“cookie_name”的cookie信息。 |
---|
方法名称 | get_cookie(cookie_name) |
参数介绍 | cookie_name |
样式代码 | driver.get_cookie(“NET_SessionId”) |
作用介绍 | 获取当前会话所有cookie信息。 |
---|
方法名称 | get_cookies(); |
参数介绍 | |
样式代码 | driver. get_cookies (): |
作用介绍 | 删除cookie信息。 |
---|
方法名称 | delete_cookie(cookie_name) |
参数介绍 | cookie_name |
样式代码 | driver.delete_cookie(“NET_SessionId”) |
作用介绍 | 删除所有cookie信息。 |
---|
方法名称 | delete_all_cookies() |
参数介绍 | 无 |
样式代码 | driver.delete_all_cookies() |
作用介绍 | 添加cookie。“cookie_dict”指字典对象,必须有name和value值。 |
---|
方法名称 | add_cookie(cookie_dict) |
参数介绍 | cookie_dict:Dict 对象 |
样式代码 | driver.add_cookie({“name”:”value”}) |
保存屏幕截图
作用介绍 | 保存屏幕截图 |
---|
方法名称 | save_screenshot(file_name) |
参数介绍 | file_name |
样式代码 | driver.save_screenshot(“D:\123.png”) |
作用介绍 | 获取屏幕截图为 file格式的数据,并保存到硬盘。 |
---|
方法名称 | get_screenshot_as_file(File_name) |
参数介绍 | File_name |
样式代码 | get_screenshot_as_file(“D:\test.png”) |
作用介绍 | 获取屏幕截图为 png格式的数据,但不能保存到硬盘。 |
---|
方法名称 | get_screenshot_as_png() |
参数介绍 | |
样式代码 | png = driver.get_screenshot_as_png() with open(“D:\test.png”, ‘wb’) as f: f.write(png) |
执行脚本
作用介绍 | 异步执行script 脚本,不影响页面加载。 |
---|
方法名称 | execute_async_script() |
参数介绍 | script |
样式代码 | driver.execute_async_script(“alert(‘execute_async_script’)”) |
作用介绍 | 同步执行script 脚本,影响页面加载。 |
---|
方法名称 | execute_script |
参数介绍 | script |
样式代码 | driver.execute _script(“alert(‘execute_script’)”) |
作用介绍 | 设置script 运行超时时间 |
---|
方法名称 | set_script_timeout(time_to_wait) |
参数介绍 | time_to_wait; Intger 秒钟 |
样式代码 | driver.set_script_timeout(30) |
作用介绍 | 指定页面元素调用js脚本 |
---|
方法名称 | driver.execute_script |
参数介绍 | js:Java Srcrpt 语言 login_link:webele元素 js中第用到的第一个参数 target js中第用到的第二个参数 |
样式代码 | login_link = driver.find_element_by_link_text(‘登录’) js='arguments[0].removeAttribute(argument[1])' driver.execute_script(js,login_link,“target”) |
Selenium 元素对象
基本属性
ID 属性名称 作用介绍
text 标签中的文本内容
tag_name 标签名称
id 返回selenium元素 id
rect 返回元素位置,大小信息
location 返回元素位置
size 返回元素大小
基础操作方法
参数名称 | 介绍 |
---|
submit | 点击按钮,敲击回车 |
get_attribute | 返回指定标签参数 |
get_property | 返回指定标签参数 |
value_of_css_property | 返回属于CSS 的属性信息 |
is_displayed | 判断元素是否不可见 |
is_enabled | 判断元素是否可见 |
is_selected | 判断元素是被选择 |
location_once_scrolled_into_view | 将页面元素显示到窗口可见 |
作用介绍 | 清空文本中的数据 |
---|
方法名称 | clear() |
参数介绍 | |
样式代码 | ele = driver.find_element_by_id(“dmp_ad_58”) ele. clear() |
作用介绍 | 点击按钮 |
---|
方法名称 | click() |
参数介绍 | |
样式代码 | ele = driver.find_element_by_id(“dmp_ad_58”) ele. click () |
作用介绍 | send_keys 向文本框中发送字符串 |
---|
方法名称 | send_keys(str) |
参数介绍 | Str |
样式代码 | ele = driver.find_element_by_id(“dmp_ad_58”) ele. send_keys (“123”) |
作用介绍 | 点击按钮,敲击回车 |
---|
方法名称 | submit |
参数介绍 | |
样式代码 | ele = driver.find_element_by_id(“dmp_ad_58”) ele. submit () |
作用介绍 | 返回指定标签参数 |
---|
方法名称 | get_attribute(name) ; get_property(name) |
参数介绍 | Name |
样式代码 | ele = driver.find_element_by_id(“dmp_ad_58”) ele. get_attribute(“name”) ; ele. get_ property (“name”) |
作用介绍 | 返回属于CSS 的属性信息 |
---|
方法名称 | value_of_css_property(name) |
参数介绍 | Name |
样式代码 | ele = driver.find_element_by_id(“dmp_ad_58”) ele. value_of_css_property (“name”) ; |
作用介绍 | 判断元素是否不可见 ; 判断元素是否可见 ; 判断元素是被选择 |
---|
方法名称 | is_displayed();is_enabled() ; is_selected() |
参数介绍 | |
样式代码 | ele = driver.find_element_by_id(“dmp_ad_58”) ele. is_displayed ( ) ; ele. is_ enabled ( ) ; ele. is_ selected ( ) ; |
作用介绍 | 将页面元素显示到窗口可见 |
---|
方法名称 | location_once_scrolled_into_view() |
参数介绍 | |
样式代码 | ele = driver.find_element_by_id(“dmp_ad_58”) ele. location_once_scrolled_into_view() |