首页 > 编程语言 >selenium源码通读·4 |webdriver/common分析

selenium源码通读·4 |webdriver/common分析

时间:2023-01-30 14:03:21浏览次数:46  
标签:webdriver keys selenium py driver 源码 common

(·4 |webdriver/common分析)

1 定义

  • selenium/webdriver/common目录定义了webdriver所指定的通用能力;
  • 包括了各种行为控制等,详细后边描述。

2 common目录

  • 包含了actions目录、html5目录,还有其他几个py文件 在这里插入图片描述

3 actions、html5 目录

在这里插入图片描述 在这里插入图片描述

4 目录说明

目录 说明
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 一些通用的功能

5 实例演示

  • 比如keys.py定义了支持键盘的能力,那么我们举例一下说明这个用法;
  • 先引入这个包:
from selenium.webdriver.common.keys import Keys
  • 打开浏览器,输入NoamaNelson,键盘回车搜索;
  • 全选输入的内容;
  • 重新输入N;
  • 代码如下:
# -*- coding:utf-8 -*-
# 作者:NoamaNelson
# 日期:2022/5/13
# 文件名称:selen_stu.py
# 作用:验证键盘输入
# 联系:VX(NoamaNelson)
# 博客:https://blog.csdn.net/NoamaNelson

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import time

driver = webdriver.Chrome()
driver.get("http://www.baidu.com")

driver.find_element_by_id("kw").send_keys("NoamaNelson")
time.sleep(1)
driver.find_element_by_id("kw").send_keys(Keys.ENTER)
driver.maximize_window()
time.sleep(0.5)
driver.find_element_by_id("kw").send_keys(Keys.CONTROL,"a")
time.sleep(0.5)
driver.find_element_by_id("kw").send_keys("N")
time.sleep(1)
driver.quit()

标签:webdriver,keys,selenium,py,driver,源码,common
From: https://blog.51cto.com/NoamaNelson/6026269

相关文章

  • selenium源码通读·5 |webdriver/common/action_chains.py-ActionChains类分析
    (·5|webdriver/common/action_chains.py-ActionChains类分析)1源码路径selenum/webdriver/common/action_chains.py2功能描述提供鼠标操作,模拟用户的鼠标行为;如......
  • selenium源码通读·6 |webdriver/common/alert.py-Alert类分析
    (·6|webdriver/common/alert.py-Alert类分析)1源码路径selenum/webdriver/common/alert.py2功能描述定义了处理弹窗的能力;如警告框、提示框、确认框等等。3......
  • selenium源码通读·7 |webdriver/common/by.py-By类分析
    (·7|webdriver/common/by.py-By类分析)1源码路径selenium/webdriver/common/by.py2功能描述翻译:一组受支持的定位器策略,即支持的定位方式定位方式包含八种:cla......
  • Selenium简单介绍
    Selenium简单介绍​ Selenium是一个用于Web应用程序测试的工具;Selenium测试直接运行在浏览器中,就像真正的用户在操作一样;支持通过各种driver(FirfoxDriver,IternetExpl......
  • 贪吃蛇游戏源码
      //定义食物类foodclassFood{//定义一个属性表示食物对应的元素element:HTMLElement;constructor(){//获取页面中的food元素并赋值给......
  • USB摄像头驱动实现源码分析
    Spac5xx的实现是按照标准的USBVIDEO设备的驱动框架编写(其具体的驱动框架可参照/usr/src/linux/drivers/usb/usbvideo.c文件),整个源程序由四个主体部分组成:总结送免费学习......
  • Seata源码结构及事务模式介绍
    1.Seata是什么Seata是一款开源的分布式事务解决方案,致力于提供高性能和简单易用的分布式事务服务。Seata将为用户提供了AT、TCC、SAGA和XA事务模式,为用户打造一站式......
  • eureka源码分析环境准备
    一、工具准备:eureka源码,下载地址:https://github.com/Netflix/eureka/tree/v1.7.2;gradle安装配置环境变量,自行百度;IDEA2018.1版本(其他版本不一定兼容)二、......
  • IdentityServer4源码解析_2_元数据接口
    1|0目录IdentityServer4源码解析_1_项目结构IdentityServer4源码解析_2_元数据接口IdentityServer4源码解析_3_认证接口IdentityServer4源码解析_4_令牌发放接口Id......
  • 数据访问层服务自动注册类封装和使用源码-AutoFac
    项目使用三层结构RepositoryIocFactoryusingSystem;usingSystem.Reflection;usingAutofac;namespaceCommonHelper.AutoInject.Repository{publicclassRe......