selenium - css 定位
前言:
CSS(Cascading Style Sheets)是一种语言,它被用来描述 HTML 和 XML 文档的表现。
CSS 使用选择器来为页面元素绑定属性。这些选择器可以被 selenium 用作另外的定位策略。
来看一下css的选择器:
- 更多css选择器内容请点击链接:http://www.w3school.com.cn/cssref/css_selectors.asp
一、通过常用属性定位
# 1.通过id定位,#代表id属性
driver.find_element_by_css_selector("#username").send_keys("python")
# 2.通过class定位,.代表class属性
driver.find_element_by_css_selector(".ml-46").send_keys("selenium")
# 3.通过name定位
driver.find_element_by_css_selector("[name='username']").send_keys("selenium")
二、通过常用属性定位,比如:input标签等
# 4.通过标签定位
driver.find_element_by_css_selector("input").send_keys("selenium")
三、通过多属性组合定位,通过id和class属性,中间不用and,比xpath语法简洁
# 5.通过多属性组合定位
driver.find_element_by_css_selector("[id='username'][class='ml-46']").send_keys(132)
# 6.通过其他属性定位
driver.find_element_by_css_selector("[type='text']").send_keys("selenium")
四、通过层级关系-索引
# 7.通过层级关系-索引,:nth-child(1)表示第一个
driver.find_element_by_css_selector("select#ad_type>option:nth-child(1)").click()
css定位更快,语法更简洁。这里只是css定位中的一些,还有很多其他的css定位方法,有空可以去研究研究