css 定位的优点:
- 执行效率比xpatch 快一点
- 语法比xpatch 稍微简洁点
- 很多复杂的css会比xpatch 可读性差
css 语法:
- #表示id 选择器
- . 表示class 选择器, 不能有空格
- ‘> ’表示子元素,层级
- 一个空格也表示子元素,但是是所有的后代子元素,相当于xpath 中的相对路径
- cas 的语法很多,可以查看 https://www.runoob.com/cssref/css-selectors.html
- 如果这个元素没有你想要的属性,可以使用其他属性定位
input[placeholder]
获取具备相同属性的多个元素
# 获取具备多个相同属性的元素
sleep(3)
eleList=driver.find_elements_by_css_selector('.el-input__inner')
# for ele in eleList:
# print(ele)
eleList[0].send_keys('sq2')
#---------层级+元素属性定位---------------
'''
操作场景:
1,登陆完成--->点击菜单栏按钮---> 点击复选框操作
定位思路:
1- 使用f12看到按钮菜单栏选项有一个li
2,点击菜单的按钮
3,需要涉及到序列编号操作:li:nth-child(第几个-从1开始)
ul[role='menubar']>li>ul[role="menu"]>li:nth-child(1)