[译]Selenium Python文档:七、WebDriver API接口
由于API文档格式不太适合cnblog博客,暂且翻译一部分,且暂未校对
注意:这不是官方文档,官方 API文档在这里.
本章包含Selenium WebDriver的所有接口
推荐import风格
本章中的API第一显示的都是类的绝对位置。然而,要推荐的是下面这种import风格:
from selenium import webdriver
接着,你可以像下面这样访问其中的类:
webdriver.Firefox
webdriver.FirefoxProfile
webdriver.Chrome
webdriver.ChromeOptions
webdriver.Ie
webdriver.Opera
webdriver.PhantomJS
webdriver.Remote
webdriver.DesiredCapabilities
webdriver.ActionChains
webdriver.TouchActions
webdriver.Proxy
特殊的按键类(Keys)可以像下面这样import:
from selenium.webdriver.common.keys import Keys
异常类可以像下面这样导入(使用真实的类名替换其中的TheNameOfExceptionClass):
from selenium.common.exceptions import [TheNameOfTheExceptionClass]
API使用约定
有些方法和属性( attributes)是可调用的,而有些是不可调用的(properties)。所有可调用的attributes都以圆括号结尾。
一个 property示例:
current_url
当前加载的页面的URL
使用:driver.current_url
一个方法示例:
- close()
关闭当前窗口
使用:driver.close()
7.1.异常
异常可能出现在任意的webdriver代码中。
异常:
selenium.common.exceptions.ElementNotSelectableException(msg=None, screen=None, stacktrace=None)
基类:selenium.common.exceptions.InvalidElementStateException
当选择一个不可选择的元素是抛出。比如,选择一个script元素。
异常:
selenium.common.exceptions.ElementNotVisibleException(msg=None, screen=None, stacktrace=None)
基类:selenium.common.exceptions.InvalidElementStateException
当一个元素在DOM中,却是不可视的,无法与之交互时抛出。
通常会在尝试点击或者读取视图中一个隐藏元素是遇到这种异常。
异常:
selenium.common.exceptions.ErrorInResponseException(response, msg)
基类:selenium.common.exceptions.WebDriverException
当服务端出现错误时抛出。
当可能发生在于火狐扩展或远程驱动器服务器进行通信时出现。
异常:
selenium.common.exceptions.ImeActivationFailedException(msg=None, screen=None, stacktrace=None)
基类:selenium.common.exceptions.WebDriverException
当激活一个IME引擎失败时抛出
异常:
selenium.common.exceptions.ImeNotAvailableException(msg=None, screen=None, stacktrace=None)
基类:selenium.common.exceptions.WebDriverException
[译]Selenium Python文档:七、WebDriver API接口的更多相关文章
- [译]Selenium Python文档:目录
作者:Baiju Muthukadan 协议:本文档采用知识共享署名 - 共享4.0国际许可. 原英文网址:http://selenium-python.readthedocs.io/index.ht ...
- [译]Selenium Python文档:一、安装
1.1.简介 Selenium Python为使用Selenium WebDriver来编写功能/验证测试提供了一个简单的API接口.通过Selenium Python API,你可以以一种非常直观的 ...
- [译]Selenium Python文档:八、附录:FAQ常见问题
另外一个FAQ:https://github.com/SeleniumHQ/selenium/wiki/Frequently-Asked-Questions 8.1.怎样使用ChromeDriver ...
- [译]Selenium Python文档:四、元素定位
要定位一个页面中的元素有多中策略和方法.你可以根据实际情况选择其中最为合适的.Selenium为定位页面元素提供了下面的这些方法: find_element_by_id(使用id) find_elem ...
- [译]Selenium Python文档:二、初步开始
2.1.简单使用 如果已经安装好了Selenium Python,你就可以像下面这样编写Python代码来使用它了: from selenium import webdriver from selen ...
- [译]Selenium Python文档:五、Waits等待
大多数现代web应用都使用了AJAX技术.当浏览器加载一个页面的时候,该页面内的元素可能在不用的时间间隔内进行加载.这使得元素定位变得比较困难:如果一个元素还没有出现在DOM中,定位函数将会抛出一个E ...
- [译]Selenium Python文档:六、页面对象
本章是介绍页面对象设计模式的教程.一个页面对象代表了web应用用户接口的一片区域,你的测试代码将与之交互的. 使用页面对象模式的好处: 可以创建在多个测试样例中都可使用的可重用代码 减少重复性代码 如 ...
- [译]Selenium Python文档:三、导航控制
你使用WebDriver要做的第一件事就是访问一个链接.一般通过调用get方法来实现: driver.get("http://www.baidu.com") 在将控制权返给你的脚本 ...
- 基于 Python 官方 GitHub 构建 Python 文档
最近在学 Python,所以总是在看 Python 的官方文档, https://docs.python.org/2/ 因为祖传基因的影响,我总是喜欢把这些文档保存到本地,不过 Python 的文档实 ...
随机推荐
- JDK分析工具&JVM垃圾回收(转)
转自:http://blog.163.com/itjin45@126/blog/static/10510751320144201519454/ 官方手册:http://docs.oracle.com/ ...
- 一个web应用的诞生--数据存储
上一章实现了登录的部分功能,之所以说是部分功能,是因为用户名和密码写成固定值肯定是不可以的,一个整体的功能,至少需要注册,登录,密码修改等,这就需要提供一个把这些值存储到数据库的能力. 当前的主流数据 ...
- 微软Visual Studio二十周年:VS2017于3月7日发布
二十年前的今天,微软正式发布Visual Studio 97.如今二十年已经过去,微软宣布全新的Visual Studio 2017即将在美国当地时间3月7日正式发布. VS97是Visual Stu ...
- C语言一维数组复制
/* * 通过自定义的函数memcpy实现复制功能,优点是不需要引用库函数 * 在windows平台下,通过sizeof测试发现: int 4字节 float 4字节 double 8字节 */ #i ...
- 安装和配置Symfony
为了简化创建新项目的过程,Symfony提供一个安装程序. 安装Symfony Installer 使用Symfony Installer是创建新的Symfony项目的唯一推荐方式,这个install ...
- Frogs
Problem Description There are m stones lying on a circle, and n frogs are jumping over them.The ston ...
- 今天遇到的面试题for(j=0,i=0;j<6,i<10;j++,i++) { k=i+j; } k 值最后是多少?
for(j=0,i=0;j<6,i<10;j++,i++) { k=i+j; } k 值最后是多少? <script type="text/javascript" ...
- libviso中的姿态解算【转载】
这篇关于libviso的文章,本人已投稿在泡泡机器人微信公众号中,放到这里,作学习笔记用. libviso一直以来被称为在视觉里程计(VO)中的老牌开源算法.它通过corner,chessboard两 ...
- ASP.NET通用权限框架 权限管理系统源码jquery 精美UI源码
软件技术开发,合作请联系QQ:858-048-581 开发工具 VS2010 .sql2005.2008等(在Sql server数据执行脚本即可) VS2010 打开保证本地运行成功(数据库.源代 ...
- SpringBoot + SwaggerUI
后台写接口,由于要提供接口文档给前台使用,所有研究了一下swagger,看到网上有篇文章写得不错,就直接拿过来了. swagger用于定义API文档. 好处: 前后端分离开发 API文档非常明确 测试 ...