在selenium元素定位時會用到css選擇器選取元素,雖說xpath在定位元素時能解決大部分問題,但使用css選擇器選取元素也是一種不錯的選擇。
css相較與xpath選擇元素優點如下:
常用的css選擇器大致分為以下幾種:
1.基礎選擇器:
基礎選擇器包括:
事列:
style標籤中定義css選擇器,以下為各個css選擇方式選中的元素會根據css選擇器中設定的不同顏色進行展示,以下事列同理。
doctype html執行結果:>
<
html
lang
="en"
>
<
head
>
<
meta
charset
="utf-8"
>
<
title
>base css
title
>
<
style
type
="text/css"
>
#title
p.text
style
>
head
>
<
body
>
<
h3 id
="title"
>這是id
h3>
<
p>這是標籤
p>
<
div
class
="text"
>
<
em>這是類
em>
div>
body
>
html
>
2.組合選擇器
組合選擇器就是將基礎選擇器的方法進行混合使用.有如下幾種方式:
事列如下:
標籤指定選擇:
doctype html執行結果:>
<
html
lang
="en"
>
<
head
>
<
meta
charset
="utf-8"
>
<
title
>標籤指定選擇
title
>
<
style
>
p#a1
p.aclass
style
>
head
>
<
body
>
<
div>
<
p>我想睡懶覺
p>
<
p id
="a1"
>根本沒睡醒
p>
<
p class
="aclass"
>困得要死
p>
div>
body
>
html
>
後代選擇器:
該寫什麼執行結果:不知道哎
這就有點小憂傷
你憂傷個錘錘
子代選擇器:
該寫什麼執行結果:不知道哎
這就有點小憂傷
你憂傷個錘錘
通過上面的比較可以看出:
子代選擇器只能選擇到第一代子元素(可以選擇到兒子,選不到孫子)
後代選擇器可以選擇所有後代元素(既有兒子,還有孫子等)
並集選擇器:
doctype html執行結果:>
<
html
>
<
head
>
<
meta
charset
="utf-8"
>
<
title
>
title
>
<
style
>
p,#one,.two
style
>
head
>
<
body
>
<
p>我愛學習
p>
<
span
id="one"
>我愛運動
span
>
<
strong
class
="two"
>我愛睡覺
strong
>
body
>
html
>
3.屬性選擇器
屬性選擇器是運用標籤中的屬性進行定位,比如標籤中常用的text屬性等。
事列:
doctype html執行結果:>
<
html
>
<
head
>
<
meta
charset
="utf-8"
>
<
title
>
title
>
<
style
type
="text/css"
>
pp[title="one"]
p[title~="two"]
p[title|="three"]
style
>
head
>
<
body
>
<
p title
="five"
>我愛學習
p>
<
p title
="one"
>我愛運動
p>
<
p title
="one two"
>我愛吃飯
p>
<
p title
="three-four"
>我愛睡覺
p>
body
>
html
>
Selenium之元素定位
1.檢視頁面元素 id class type name等。2.通過webdriver的方法定位 絕對路徑 find element by xpath html body div 1 div 1 div div 1 div form span 1 input 相對路徑 find element by ...
selenium元素定位之CSS
css是一種語言,用來描述html和xml文件的屬性,css使用選擇器來為頁面屬性繫結屬性。這些選擇器可以被selenium用來當做定位元素的策略。css選擇器常見的語法 選擇器舉例 描述.class dou class選擇器,選擇class dou 的所有元素 id gao id選擇器,選擇id ...
selenium之元素定位方法
4 class 5 link text 超連結文字 6 xpath 7 css定位 8 定位相同元素第二個 type text class s ipt name wd id kw maxlength 100 autocomplete off driver.find element by id kw ...