css_selector定位总结

Posted zwldyt

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了css_selector定位总结相关的知识,希望对你有一定的参考价值。

css selector

优点:通过样式定位,速度快

缺点:支持selenium但不支持appium--xpath可用

 selenium定位语法$(‘‘)

 

 技术图片

 

 技术图片

 

 示例如下:

$(‘#s_tab>a:nth-child(2)‘)name 或id定位子元素

$(‘#s_tab a:nth-child(2)‘)子子孙孙元素

$(‘#s_tab a:nth-last-child(1)‘)

1.3 css_selector定位详解

driver.find_element_by_css_selector()

css定位可以分为四类:idclass、其他属性、路径。

1.3.1 #id方式

两种方式,可以在前面加上tag名称,也可以不加

driver.find_element_by_css_selector(‘#id_value’)

driver.find_element_by_css_selector(‘tag_name#id_value’)

1.3.2 .class方式

两种方式,前面加上tag名称,也可以不加。如果不加tag名称时,点不能省略。

driver.find_element_by_css_selector(‘.class_value’)

driver.find_element_by_css_selector(‘tag_name.class_value’)

有的class_value比较长,而且中间有空格时,不能把空格原样写进去,那样不能识别。这时,空格用点代替,前面要加上tag_name

driver.find_element_by_css_selector(‘div.panel.panel-email‘).click()

1.3.3其他属性方式

两种方式,可以在前面加上tag名称,也可以不加。

driver.find_element_by_css_selector(“[attri_name=’attri_value’]”)

driver.find_element_by_css_selector("input[type=‘password‘]").send_keys(‘我要自學網‘)

driver.find_element_by_css_selector("[type=‘password‘]").send_keys(‘我要自學網‘)

1.3.4路径法

两种方式,可以在前面加上tag名称,也可以不加。注意它的层级关系使用大于号“>”。

driver.find_element_by_css_selector("form#loginForm>ul>input[type=‘password‘]").send_keys(‘111222333‘)

以上是关于css_selector定位总结的主要内容,如果未能解决你的问题,请参考以下文章

css_selector定位总结

selenium:css_selector定位详解

一:unittest框架配合selenium工具之CSS_selector定位。

使用python处理selenium中的css_selector定位元素的模糊匹配问题

常用元素定位方法总结

Selenium-css_selector详解