css选择器是什么
css 选择器 是浏览器用来选择元素的, 我们selenium 也要选择元素,也可以使用css 的选择器语法来选择 web 元素。 而且这种方法效率还非常的高。
CSS选择器基本用法
根据 tag 名 选择
p {color: red;}
表示选择所有的 p 元素 , 运行一下都变成红色了
如果改为
p {color: blue;} , 运行一下
这里面 选择器就根据元素标签名。。。。起到了选择的作用
------
根据 id ,修改一下
#food {color: blue;} 表示选择ID为 food的 元素 ,
如果改为
#food2 {color: blue;} , 运行一下
这里面 选择器就根据 id 。。。。起到了选择的作用
------
根据class 选择,修改一下
.special {color: red;}
有的元素 有两个class 值,
<span class="vegetable good">黄瓜</span>
.good {color: red;}
.vegetable {color: blue;} 表示选择所有的 class
为 vegetable 的元素 ,
注意
<span class="vegetable good">黄瓜</span>
表示这个元素 有两个class 值, 而不是 一个 vegetable good 整体的属性
这里面 选择器就根据 class。。。。起到了选择的作用
可以
.vegetable.good
----
当然也可以组合写 span.vegetable {color: blue;}
这样p.vegetable 就不会被选中
<p class="vegetable">青菜</p>
以上介绍的只是css选择器的冰山一角,更多内容移步到w3c有更多资料
后续课程中也会陆续讲到css的高级使用技巧
使用css方法选择元素
eles = driver.find_elements_by_css_selector('#choose_car option')
CSS后代选择器用法
语法 如下
<s1> <s2>
表示 选择s1 元素 里面 所有的s2元素, S2可以是S1的直接子节点,也可以不是
其中<s1> <s2>可以是我们前面学过的css 根据tag名、id 、 class 描述的任何语法
比如:
#choose_car option
就是 选择 id为 choosecar 的元素的内部的 标签为option 的子元素。
到底是 不是直接子元素,不重要,
只要是 属于choose_car 的内部的option元素就可以了。