由于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接口的更多相关文章

  1. [译]Selenium Python文档:目录

    作者:Baiju Muthukadan 协议:本文档采用知识共享署名 - 共享4.0国际许可. 原英文网址:http://selenium-python.readthedocs.io/index.ht ...

  2. [译]Selenium Python文档:一、安装

    1.1.简介 Selenium Python为使用Selenium WebDriver来编写功能/验证测试提供了一个简单的API接口.通过Selenium Python API,你可以以一种非常直观的 ...

  3. [译]Selenium Python文档:八、附录:FAQ常见问题

    另外一个FAQ:https://github.com/SeleniumHQ/selenium/wiki/Frequently-Asked-Questions 8.1.怎样使用ChromeDriver ...

  4. [译]Selenium Python文档:四、元素定位

    要定位一个页面中的元素有多中策略和方法.你可以根据实际情况选择其中最为合适的.Selenium为定位页面元素提供了下面的这些方法: find_element_by_id(使用id) find_elem ...

  5. [译]Selenium Python文档:二、初步开始

    2.1.简单使用 如果已经安装好了Selenium Python,你就可以像下面这样编写Python代码来使用它了: from selenium import webdriver from selen ...

  6. [译]Selenium Python文档:五、Waits等待

    大多数现代web应用都使用了AJAX技术.当浏览器加载一个页面的时候,该页面内的元素可能在不用的时间间隔内进行加载.这使得元素定位变得比较困难:如果一个元素还没有出现在DOM中,定位函数将会抛出一个E ...

  7. [译]Selenium Python文档:六、页面对象

    本章是介绍页面对象设计模式的教程.一个页面对象代表了web应用用户接口的一片区域,你的测试代码将与之交互的. 使用页面对象模式的好处: 可以创建在多个测试样例中都可使用的可重用代码 减少重复性代码 如 ...

  8. [译]Selenium Python文档:三、导航控制

    你使用WebDriver要做的第一件事就是访问一个链接.一般通过调用get方法来实现: driver.get("http://www.baidu.com") 在将控制权返给你的脚本 ...

  9. 基于 Python 官方 GitHub 构建 Python 文档

    最近在学 Python,所以总是在看 Python 的官方文档, https://docs.python.org/2/ 因为祖传基因的影响,我总是喜欢把这些文档保存到本地,不过 Python 的文档实 ...

随机推荐

  1. JDK分析工具&JVM垃圾回收(转)

    转自:http://blog.163.com/itjin45@126/blog/static/10510751320144201519454/ 官方手册:http://docs.oracle.com/ ...

  2. 一个web应用的诞生--数据存储

    上一章实现了登录的部分功能,之所以说是部分功能,是因为用户名和密码写成固定值肯定是不可以的,一个整体的功能,至少需要注册,登录,密码修改等,这就需要提供一个把这些值存储到数据库的能力. 当前的主流数据 ...

  3. 微软Visual Studio二十周年:VS2017于3月7日发布

    二十年前的今天,微软正式发布Visual Studio 97.如今二十年已经过去,微软宣布全新的Visual Studio 2017即将在美国当地时间3月7日正式发布. VS97是Visual Stu ...

  4. C语言一维数组复制

    /* * 通过自定义的函数memcpy实现复制功能,优点是不需要引用库函数 * 在windows平台下,通过sizeof测试发现: int 4字节 float 4字节 double 8字节 */ #i ...

  5. 安装和配置Symfony

    为了简化创建新项目的过程,Symfony提供一个安装程序. 安装Symfony Installer 使用Symfony Installer是创建新的Symfony项目的唯一推荐方式,这个install ...

  6. Frogs

    Problem Description There are m stones lying on a circle, and n frogs are jumping over them.The ston ...

  7. 今天遇到的面试题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" ...

  8. libviso中的姿态解算【转载】

    这篇关于libviso的文章,本人已投稿在泡泡机器人微信公众号中,放到这里,作学习笔记用. libviso一直以来被称为在视觉里程计(VO)中的老牌开源算法.它通过corner,chessboard两 ...

  9. ASP.NET通用权限框架 权限管理系统源码jquery 精美UI源码

    软件技术开发,合作请联系QQ:858-048-581 开发工具 VS2010 .sql2005.2008等(在Sql server数据执行脚本即可)  VS2010 打开保证本地运行成功(数据库.源代 ...

  10. SpringBoot + SwaggerUI

    后台写接口,由于要提供接口文档给前台使用,所有研究了一下swagger,看到网上有篇文章写得不错,就直接拿过来了. swagger用于定义API文档. 好处: 前后端分离开发 API文档非常明确 测试 ...