摘要:和是中两个非常重要的类,使用它们提供的方法可以实现与浏览器和页面元素的各种交互操作。该方法在每个只需要调用一次等待时间单位为秒设置一个页面完全加载完成的超时等待时间等待时间单位为秒设置脚本执行的超时时间,应该在抛出错误之前等待时间单位为秒
WebDriver 和 WebElement 是 Selenium 中两个非常重要的类,使用它们提供的方法可以实现与浏览器和页面元素的各种交互操作。WebDriver 提供了许多用来与浏览器交互的功能和设置,我们可以通过使用 WebDriver 的功能和一些方法来实现与浏览器窗口、警告、框架和弹出窗口的交互,它也提供了自动化操作浏览器导航栏、设置 cookies、截屏等特性,后面将一一介绍。
WebDriver 功能功能/属性 | 描述 | 实例 |
---|---|---|
current_url | 获取当前页面的 URL 地址 | driver.current_url |
current_window_handle | 获取当前窗口的句柄 | driver.current_window_handle |
name | 获取该实例底层的浏览器名称 | driver.name |
orientation | 获取当前设备的方位 | driver.orientation |
page_source | 获取当前页面的源代码 | driver.page_source |
title | 获取当前页面的标题 | driver.title |
window_handles | 获取当前 session 里的所有窗口的句柄 | driver.window_handles |
方法 | 描述 | 参数 | 实例 |
---|---|---|---|
back( ) | 后退一步到当前会话的浏览器历史记录中最后一步操作前的页面 | driver.back( ) | |
close( ) | 关闭当前浏览器窗口 | driver.close( ) | |
forward( ) | 前进一步到当前会话的浏览器历史记录中前一步操作后的页面 | driver.forward( ) | |
get(url) | 访问目标 URL 并加载网页到当前的浏览器会话 | URL 是目标网页的网站地址 | driver.get ("https://www.baidu.com/") |
maximize_window( ) | 最大化当前浏览器窗口 | driver.maximize_window( ) | |
quit( ) | 退出当前 driver 并且关闭所有的相关窗口 | driver.quit( ) | |
refresh( ) | 刷新当前页面 | driver.refresh( ) | |
switch_to_active_ element( ) |
返回当前页面唯一焦点所在的元素 | driver.switch_to_active_ element( ) |
|
switch_to_alert( ) | 把焦点切换至当前页面弹出的警告 | driver.switch_to_alert( ) | |
switch_to_default_ centent( ) |
切换焦点至默认框架内 | driver.switch_to_default_ content( ) |
|
switch_to_frame (frame_reference) |
通过索引、名称和网页元素将焦点切换到指定的框架,这种方法也适用于IFRAMES | frame_reference:要切换的目标窗口的名称、整数类型的索引或者要切换的目标框架的网页元素 | driver.switch_to-frame (frame_reference) |
switch_to_window (window_name) |
切换焦点到指定的窗口 | window_name:要切换的目标窗口的名称或者句柄 | driver.switch_to_window (window_name) |
implicitly_wait (time_to_wait) |
超时设置等待目标元素被找到,或者目标指令执行完成。该方法在每个session只需要调用一次 | time_to_wait:等待时间(单位为秒) | driver.implicitly_wait (time_to_wait) |
set_page_load_timeout (time_to_wait) |
设置一个页面完全加载完成的超时等待时间 | time_to_wait:等待时间(单位为秒) | driver.set_page_load_timeout (time_to_wait) |
set_script_timeout (time_to_wait) |
设置脚本执行的超时时间,应该在execute_async_script抛出错误之前 | time_to_wait:等待时间(单位为秒) | driver.set_script_timeout (time_to_wait) |
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/43255.html
当我们想让 Selenium 自动地操作浏览器时,就必须告诉 Selenium 如何去定位某个元素或一组元素,每个元素都有着不同的标签名和属性值,Selenium 提供了以下8种定位元素的方式,每种方式对应了2个方法:find_element_by_( ),是用来定位单个元素的,find_elements_by_( ),是用来定位多个元素的。 通过 id 定位 通过 name 定位 通过 cla...
摘要:前面一节主要介绍了类,这一节则主要介绍类。提供了一些功能属性和方法来实现与网页元素的交互,这些元素主要包括文本框文本域按钮单选框多选框表格等等。 前面一节主要介绍了 WebDriver 类,这一节则主要介绍 WebElement 类。WebElement 提供了一些功能、属性和方法来实现与网页元素的交互,这些元素主要包括文本框、文本域、按钮、单选框、多选框、表格等等。 WebEleme...
摘要:注意如果上述脚本无法正常启动浏览器,需要先检查与浏览器的版本是否一致然后再检查浏览器对应的文件是否放在的安装目录下,如系统的默认安装路径,,如果没有请将该文件放在此目录下,然后再次运行脚本。 第一个自动化测试脚本 脚本如下所示: # _*_ coding:utf-8 _*_ from selenium import webdriver from selenium.webdriver....
摘要:华文宋体验证搜索结果页面的标题是否是自动化测试百度搜索。华文宋体移除了华文宋体版本的华文宋体也就是说,华文宋体不再得到官方的支持。一、自动化测试概念1、概念java:TestNgpython:unittest pytest2、自动化测试可行性测试目的明确,需求不会频繁的变更对于项目的自动化测试,要看项目的具体情况一个产品需要在多个环境下部署对于web GUI测试,需要测试用例在不同的浏览器上...
摘要:且本小白也亲身经历了整个从小白到爬虫初入门的过程,因此就斗胆在上开一个栏目,以我的图片爬虫全实现过程为例,以期用更简单清晰详尽的方式来帮助更多小白应对更大多数的爬虫实际问题。 前言: 一个月前,博主在学过python(一年前)、会一点网络(能按F12)的情况下,凭着热血和兴趣,开始了pyth...
阅读 1260·2021-11-04 16:09
阅读 3305·2021-10-19 11:45
阅读 2344·2021-10-11 10:59
阅读 972·2021-09-23 11:21
阅读 2730·2021-09-22 10:54
阅读 1092·2019-08-30 15:53
阅读 2562·2019-08-30 15:53
阅读 3436·2019-08-30 12:57