selenium-元素扩展

in TEST with 0 comment

Xpath元素定位-find_element_by_xpath

  1. //*[text() = 'value']
    • //value表示的是要定位的元素的全部文本内容.
  2. //*[contains(@attribute,'value')]
    • //attribute表示的属性名称,value表示的是字符串
    • 要定位的元素中,attribute属性的属性值包含了value的内容。
  3. //*[starts-with(@attribute,'value')]
    • attribute表示的属性名 称, value表示的是字符串
    • 要定位的元素,attribute属性的属性值是以value开头

其他函数链接:https://www.w3school.com.cn/xpath/xpath_functions.asp

CSS元素定位-find_element_by_css_selector

**CSS定位策略**
- id选择器 
	- #id -- #表示通过元素的ID属性进行元素选择 id表示的是id属性的属性值
- class选择器 
 	- .class .表示通过元素的class属性进行元素选择,class表示的class属性的其中一个属性值
- 元素选择器 
 	- 就是通过元素标签名称来选择元素。表达式:tag_name 不推荐使用
- 属性选择器 
 	- [attribute='value'] attribute 表示的是属性名称,value表示的是属性值 如果使用的是class属性,需要带上class的全部属性值> 
- 层级选择器
 	- 父子层级关系选择器
 	- 表达式: element1>element2 通过element1来找 element2,并且element2是element1的直接子元素
 	- 隔代层级关系选择器
 	- 表达式: element1 element2 通过element1来找 element2, 并且element2是element1的后代元素
1.input[type^='value'] 
input表示标签名称,
type表示属性名称, 
value表示的文本内容--查找元素type属性值是以value开头的元素

2.input[type$='value'] 
input表示标签名称,
type表示属性名称, 
value表示的文本内容--查找元素type属性值以value结尾的元素 

3.input[type*='value'] 
input表示标签名称,
type表示属性名称, 
value表示的文本内容 查找元素type属性值包含value的元素

  1. id、name、class_name:为元素属性定位
  2. tag_name:为元素标签名称
  3. link_text、partial_link_text:为超链接定位(a标签)
  4. XPath:为元素路径定位
  5. CSS:为CSS选择器定位

合计8种元素定位--根据自己的实际情况选择

image.png