HTML中经常需要为某些元素指定显示效果,css就可以识别这些元素。
通过css selector选择单个元素的方法是:
最方便快捷的用浏览器复制的css参数可以定位
find_element_by_css_selector(css Selector参数)
选择多个css元素:
find_elements_by_css_selector(css Selector参数)
此外css选择器也可以根据tag名、id、class.后代元素之间的关系选择元素。
书写格式如下:
(1)用css选择器根据id定位
find_elements_by_css_selector("#ID元素")
ID元素前加井号
(2)用css选择器根据class定位
find_elements_by_css_selector(".class元素")
class元素前加点
(3)用css选择器根据tag定位
find_elements_by_css_selector(“tag元素”)
*注意:tag名一般有多个相同元素,如果用css进行单个定位的话只会选定第一个符合条件的tag名
(4)用css选择器根据子元素进行定位:
如果 元素2 是 元素1 的直接子元素,css selector 选择子元素的语法是酱婶儿滴:
find_elements_by_css_selector(“元素1 > 元素2”)
最终选择的元素是元素2 并且元素2是元素1的直接子元素
也支持多层级选择:
元素1>元素2>元素3>元素4
上面的语法选中的最终元素就是 元素4
(5)用后代元素进行定位:
find_elements_by_css_selector(“元素1 元素2”)
元素中间用空格隔开
表示在表达式中,元素1为元素2的上次层元素就可以,不一定是直接子元素
以上定位元素可以混用;
例如:
find_elements_by_css_selector(".class>元素1 元素2")
表达式的意思为:查找某个class元素直接子元素中元素1的后代元素 元素2 。
(6)css选择器支持通过任何属性来选择元素,语法是用一个方括号[]。
find_elements_by_css_selector("[属性]")
以上为本人整理,如果还有其他css的定位方法请大家在评论区补充,大家一起学习共同进步,拜谢。