selenium源码通读·12 |webdriver/remote分析

举报
虫无涯 发表于 2023/01/31 09:37:50 2023/01/31
【摘要】 1 源码路径selenium/webdriver/remote 2 功能说明方法描述说明command.pyDefines constants for the standard WebDriver commands定义标准WebDriver命令的常量errorhandler.pyError codes defined in the WebDriver wire protocolWebDri...

1 源码路径

selenium/webdriver/remote

在这里插入图片描述

2 功能说明

方法 描述 说明
command.py Defines constants for the standard WebDriver commands 定义标准WebDriver命令的常量
errorhandler.py Error codes defined in the WebDriver wire protocol WebDriver wire协议中定义的错误代码
file_detector.py Used for identifying whether a sequence of chars represents the path to a file 用于标识字符序列是否表示文件的路径
getAttribute.js / 获取属性
isDisplayed.js / 判断元素是否显示
mobile.py / 定义移动端的功能
remote_connection.py A connection with the Remote WebDriver server 与远程WebDriver服务器的连接
switch_to.py / 切换能力
utils.py / 辅助能力
webdriver.py The WebDriver implementation 定义webdriver核心API
WebElement.py Represents a DOM element 定义对webdriver element操作的能力

3 部分功能详解

3.1 command.py

  • 定义标准WebDriver命令的常量;

  • 如下:
    在这里插入图片描述

  • 比如我们常用的(部分):

常量
CLOSE close
QUIT quit
GET get
REFRESH refresh
GET_COOKIE getCookie
FIND_ELEMENT findElement
FIND_ELEMENTS findElements
GET_TITLE getTitle
SCREENSHOT screenshot
SET_TIMEOUTS setTimeouts
MAXIMIZE_WINDOW windowMaximize
MINIMIZE_WINDOW minimizeWindow
  • Alerts相关常量
    在这里插入图片描述

  • Advanced user interactions常量
    在这里插入图片描述

  • Screen Orientation常量
    在这里插入图片描述

  • Touch Actions常量
    在这里插入图片描述

  • HTML 5常量
    在这里插入图片描述
    在这里插入图片描述

  • Mobile常量
    在这里插入图片描述

3.2 errorhandler.py

  • WebDriver wire协议中定义的错误代码
  • 如下:
    在这里插入图片描述
  • 代码说明:
代码 标识 说明
0 SUCCESS 成功
7 NO_SUCH_ELEMENT no such element
8 NO_SUCH_FRAME no such frame
9 UNKNOWN_COMMAND unknown command
10 STALE_ELEMENT_REFERENCE stale element reference
11 ELEMENT_NOT_VISIBLE element not visible
12 INVALID_ELEMENT_STATE invalid element state
13 UNKNOWN_ERROR unknown error
15 ELEMENT_IS_NOT_SELECTABLE element not selectable
17 JAVASCRIPT_ERROR javascript error
19 XPATH_LOOKUP_ERROR invalid selector
21 TIMEOUT timeout
23 NO_SUCH_WINDOW no such window
24 INVALID_COOKIE_DOMAIN invalid cookie domain
25 UNABLE_TO_SET_COOKIE unable to set cookie
26 UNEXPECTED_ALERT_OPEN unexpected alert open
27 NO_ALERT_OPEN no such alert
28 SCRIPT_TIMEOUT script timeout
29 INVALID_ELEMENT_COORDINATES invalid element coordinates
30 IME_NOT_AVAILABLE ime not available
31 IME_ENGINE_ACTIVATION_FAILED ime engine activation failed
32 INVALID_SELECTOR invalid selector
33 SESSION_NOT_CREATED session not created
34 MOVE_TARGET_OUT_OF_BOUNDS move target out of bounds
51 INVALID_XPATH_SELECTOR invalid selector
52 INVALID_XPATH_SELECTOR_RETURN_TYPER invalid selector
60 ELEMENT_NOT_INTERACTABLE element not interactable
/ INSECURE_CERTIFICATE insecure certificate
61 INVALID_ARGUMENT invalid argument
/ INVALID_COORDINATES invalid coordinates
/ INVALID_SESSION_ID invalid session id
62 NO_SUCH_COOKIE no such cookie
63 UNABLE_TO_CAPTURE_SCREEN unable to capture screen
64 ELEMENT_CLICK_INTERCEPTED element click intercepted
/ UNKNOWN_METHOD unknown method exception
405 METHOD_NOT_ALLOWED unsupported operation
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。