[Selenium]中使用css选择器进行元素定位

常见语法

*

通用元素选择器,匹配任何元素

E

标签选择器,匹配所有使用E标签的元素

.info

class选择器,匹配所有class属性中包含info的元素

#footer

id选择器,匹配所有id属性等于footer的元素

E,F

多元素选择器,同时匹配所有E元素或F元素,E和F之间用逗号分隔

E F

后代元素选择器,匹配所有属于E元素后代的F元素,E和F之间用空格分隔

E > F

子元素选择器,匹配所有E元素的子元素F

E + F

毗邻元素选择器,匹配紧随E元素之后的同级元素F (只匹配第一个)

E ~ F

同级元素选择器,匹配所有在E元素之后的同级F元素

E[att='val']

属性att的值为val的E元素 (区分大小写)

E[att^='val']

属性att的值以val开头的E元素 (区分大小写)

E[att$='val']

属性att的值以val结尾的E元素 (区分大小写)

E[att*='val']

属性att的值包含val的E元素 (区分大小写)

E[att1='v1'][att2*='v2']

属性att1的值为v1,att2的值包含v2 (区分大小写)

E:contains('xxxx')

内容中包含xxxx的E元素

E:not(s)

匹配不符合当前选择器的任何元素

 

例如这样一段html代码的网页

<div class="formdiv">

<form name="fnfn">

<input name="username" type="text"></input>

<input name="password" type="text"></input>

<input name="continue" type="button"></input>

<input name="cancel" type="button"></input>

<input value="SYS123456" name="vid" type="text">

<input value="ks10cf6d6" name="cid" type="text">

</form>

<div class="subdiv">

<ul id="recordlist">

<p>Heading</p>

<li>Cat</li>

<li>Dog</li>

<li>Car</li>

<li>Goat</li>

</ul>

</div>

</div>

匹配示例:

locator

匹配

css=div

css=div.formdiv

<div class="formdiv">

css=#recordlist

css=ul#recordlist

<ul id="recordlist">

css=div.subdiv p

css=div.subdiv > ul > p

<p>Heading</p>

css=form + div

<div class="subdiv">

css=p + li

css=p ~ li

二者定位到的都是 <li>Cat</li>

但是storeCssCount的时候,前者得到1,后者得到4

css=form > input[name=username]

<input name="username">

css=input[name$=id][value^=SYS]

<input value="SYS123456" name="vid" type="hidden">

css=input:not([name$=id][value^=SYS])

<input name="username" type="text"></input>

css=li:contains('Goa')

<li>Goat</li>

css=li:not(contains('Goa'))

<li>Cat</li>

posted on   张缤分  阅读(938)  评论(0编辑  收藏  举报

编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 25岁的心里话
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

统计

点击右上角即可分享
微信分享提示