selenium/webdriver/common -定义了webdriver所指定的通用能力:
主要包括:
键盘鼠标动作链
行为控制
alert处理
html5支持
移动端的触摸动作链
……
actions目录:
主要实现键盘,鼠标,设备交互的能力
html5目录:
主要实现对于html5的支持
actions_chains.py:
定义了实现动作链能力
alert.py:
定义了实现alert标准弹框处理能力
by.py:
定义了selenium webdriver所支持的定位类型
desired_capabilities.py:
定义了实现desired_capabilities配置能力
keys.py:
定义了selenium webdriver 支持键盘的能力
proxy.py:
定义了实现selenium webdriver代理的能力
service.py:
定义了实现selenium webdriver服务的能力
touch_actions.py:
定义了实现移动设备的触摸动作行为链的能力
utils.py:
实现了一些通用的功能
先介绍下alert.py的源码实现:
关于什么是弹窗:可以搜索js中alert,confirm,prompt这三种弹窗的作用及效果
以及部分源码如下:
accept函数:
def accept(self):
"""
Accepts the alert available.
Usage::
Alert(driver).accept() # Confirm a alert dialog.
"""
if self.driver.w3c:
self.driver.execute(Command.W3C_ACCEPT_ALERT)
else:
self.driver.execute(Command.ACCEPT_ALERT)
源码解析:
先通过self.driver.w3c方法来判断浏览器是否为w3c兼容的浏览器,如果是则执行W3C兼容的指令,否则执行非W3C兼容的指令
关于w3c,百度百科是这么解释的:
万维网联盟创建于1994年,是Web技术领域最具权威和影响力的国际中立性技术标准机构。到目前为止,W3C已发布了200多项影响深远的Web技术标准及实施指南,如广为业界采用的超文本标记语言HTML(标准通用标记语言下的一个应用)、可扩展标记语言XML(标准通用标记语言下的一个子集)以及帮助残障人士有效获得Web信息的无障碍指南(WCAG)等,有效促进了Web技术的互相兼容,对互联网技术的发展和应用起到了基础性和根本性的支撑作用。
说白了就是定义web一种规范,一种标准