Selenium Webdriver 3.X源码分析之定位方式和键盘定义

2019-09-19 16:14:08 浏览数 (1)

> Selenium Webdriver 3.X源码分析系列第8篇,该系列原则上会将整个源码分享一遍

本文主要看下selenium webdriver Python端源码中定义了哪些定位方式及键盘定义了哪些键。

我们先看下在实际写代码过程中用到的定位方式和键盘输入实例,先看下在selenium webdriver提供的两种定位方式:

方法一,提供出来直接的定位方法:

id —> find_element_by_id()

class name —> find_element_by_class_name()

link text —> find_element_by_link_text()

xpath —> find_element_by_xpath()

name —> find_element_by_name()

tag name —> find_element_by_tag_name()

partial link text —> find_element_by_partial_link_text()

css selector —> find_element_by_css_selector()

方法二,通过指定定位方式的方法:

id —> find_element(By.ID,"id")

class name —> find_element (By.CLASS_NAME,"classname")

link text —> find_element (By.LINK_TEXT,"linktext")

xpath —> find_element (By.XPATH,"//xpath")

name —> find_element (By.NAME,"name")

tag name —> find_element (By.TAG_NAME,"tag name")

partial link text —> find_element_by (By.PARTIAL_LINK_TEXT,"partial link text")

css selector —> find_element_by (By.CSS_SELECTOR,"css selector")

通常大家使用的是方法一,对于方法二使用相对较少,但方法二中的By类恰恰是今天要分享的猪脚!!!看下具体的代码定义:

所以使用方法二时,只需要到导入By类即可。

在实际的项目中,我们经常需要模拟输入键盘,例如按F1、F5、或Ctrl、回车等等各种按键,这些按键在selenium webdriver Python中定义在哪?先看代码

下面介绍几个常用的键盘操作:

  • Keys.BACK_SPACE:删除键
  • Keys.SPACE:空格键
  • Keys.TAB:Tab键
  • Keys.ESCAPE:回退键
  • Keys.ENTER:回车键
  • Keys.CONTROL,”a”:组合键,Ctrl A
  • Keys.CONTROL,”x”:组合键,Ctrl X
  • Keys.CONTROL,”v”:组合键,Ctrl V
  • Keys.CONTROL,”c”:组合键,Ctrl C
  • Keys.F1:F1键
  • Keys.F12:F12键

下面我们看一个实际的键盘输入的实例,就明白如何用这些定义的键盘了

主要是通过send_keys方法将对应的按键编码发送给对象即可。

0 人点赞