Python seleniu3 元素定位

2021-10-02 16:03:09 字數 1904 閱讀 5611

1

.瀏覽器.find_element_by_id(

"id屬性值")2

.瀏覽器.find_element_by_name(

"name屬性值")3

.瀏覽器.find_element_by_class_name(

"class屬性值")4

.瀏覽器.find_element_by_tag_name(

"標籤名")5

.瀏覽器.ind_element_by_link_text(

"完整的超連結文字")6

.瀏覽器.find_element_by_partial_link_text(

"部分連續的超連結文字")7

.瀏覽器.find_element_by_xpath(

"xpath表示式"

) xpath表示式:

1.絕對路徑:

/html/body/form/div/fieldset/p/

input

2.相對路徑:

標籤+屬性:

//標籤名[@屬性名=

"屬性值"

] 層級定位:

//父標籤[@父標籤屬性名=

"父標籤的屬性值"

]/子標籤名

3.索引:

//父標籤[@父標籤屬性名=

"父標籤的屬性值"

]/子標籤名[索引值]

--從1開始,第乙個可以不加索引

4.邏輯:

//標籤名[@屬性名1

="屬性值1"

and@屬性名2

="屬性值2"

and...

.]5.模糊匹配:

//標籤名[contains(@屬性名,

"屬性值/部分屬性值")]

8.瀏覽器.find_element_by_css_selector(

"css表示式"

) css表示式:1.

'#'表示id屬性名,

'.'表示class屬性名

2.標籤+屬性(邏輯and

) 標籤[屬性名1

=屬性值1

][屬性名2

=屬性值2].

..3.層級定位(可以多寫幾個父標籤方便定位)

父標籤[父標籤屬性名=父標籤屬性值]

>子標籤 或者將">"換成空格

4.索引 父標籤[父標籤屬性名=父標籤屬性值]

>

:nth-child(索引值)

# 表示父元素下第幾個子元素

父標籤[父標籤屬性名=父標籤屬性值]

>p:nth-of-

type

(索引值)

# 表示父元素下第幾個p標籤元素

5.模糊匹配(標籤名[屬性名*=屬性值]

)^ 表示以.

..開頭

$ 表示以.

..結尾

* 匹配所有

# 定位器定位

chapter_titles_loc =

("id"

,"id屬性值"

)chapter_titles_loc =

("class name"

,"class屬性值"

)chapter_titles_loc =

("link text"

,"超連結文字值"

)chapter_titles_loc =

("partial link text"

,"部分超連結文字值"

)chapter_titles_loc =

("xpath"

,"xpath表示式"

)chapter_titles_loc =

("css selector"

,"css 表示式"

)

3 友元函式和友元類

一 友元 friend 概念 通過友元,打破了類的封裝性,可以訪問類內的所有成員 分類 友元函式 友元類 二 友元函式 概念 友元函式是乙個普通函式,不屬於類,但需要在類內表明友元關係 友元函式可訪問類內所有成員,但類不可以訪問友元函式內部資料 格式 class cperson void setpe...

python3元組 Python3元組

python的元組與列表相似,不同之處在於元組的元素不能修改 元組使用小括號,列表使用方括號 元組建立很簡單,只需要在括號中新增元素,並使用逗號隔開即可。建立空元組 tup1 tup2 1,元組只包含乙個元素時,需要在元素後面新增逗號,否則括號會被當作運算子使用 元組與字串類似,下標索引從0開始,可...

python3元類 python3元類的呼叫順序

在嘗試理解元類建立類例項的順序時,我感到困惑.根據該圖 source 我鍵入以下 進行驗證.class meta type def call self print meta call super meta,self call def new mcs,name,bases,attrs,kwargs p...