小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

Selenium2+python自動(dòng)化9

 淡茶飄香cl 2018-06-13

前言

大部分人在使用selenium定位元素時(shí),用的是xpath定位,因?yàn)閤path基本能解決定位的需求。css定位往往被忽略掉了,其實(shí)css定位也有它的價(jià)值,css定位更快,語法更簡(jiǎn)潔。
這一篇css的定位方法,主要是對(duì)比上一篇的xpath來的,基本上xpath能完成的,css也可以做到。兩篇對(duì)比學(xué)習(xí),更容易理解。

一、css:屬性定位

    1.css可以通過元素的id、class、標(biāo)簽這三個(gè)常規(guī)屬性直接定位到

    2.如下是百度輸入框的的html代碼:

<input id="kw" class="s_ipt" type="text" autocomplete="off" maxlength="100" name="wd"/>

    3.css用#號(hào)表示id屬性,如:#kw

    4.css用.表示class屬性,如:.s_ipt

    5.css直接用標(biāo)簽名稱,無任何標(biāo)示符,如:input

二、css:其它屬性

    1.css除了可以通過標(biāo)簽、class、id這三個(gè)常規(guī)屬性定位外,也可以通過其它屬性定位

    2.以下是定位其它屬性的格式

三、css:標(biāo)簽

    1.css頁可以通過標(biāo)簽與屬性的組合來定位元素

四、css:層級(jí)關(guān)系

    1.在前面一篇xpath中講到層級(jí)關(guān)系定位,這里css也可以達(dá)到同樣的效果

    2.如xpath://form[@id='form']/span/input和

//form[@class='fm']/span/input也可以用css實(shí)現(xiàn)

五、css:索引

    1.以下圖為例,跟上一篇一樣

    2.css也可以通過索引option:nth-child(1)來定位子元素,這點(diǎn)與xpath寫法用很大差異,其實(shí)很好理解,直接翻譯過來就是第幾個(gè)小孩


六、css:邏輯運(yùn)算

    1.css同樣也可以實(shí)現(xiàn)邏輯運(yùn)算,同時(shí)匹配兩個(gè)屬性,這里跟xpath不一樣,無需寫and關(guān)鍵字



七、css:模糊匹配

    1.css的模糊匹配contains('xxx'),網(wǎng)上雖然用各種資料顯示能用,但是小編親自試驗(yàn)了下,一直報(bào)錯(cuò)。

    2.在各種百度后找到了答案:you can't do this with CSS selectors, because there is no such thing as:contains() in CSS. It was a proposal that was abandoned years ago.

非常遺憾,這個(gè)語法已經(jīng)被拋棄了,所以這里就沒繼續(xù)研究了。

css語法遠(yuǎn)遠(yuǎn)不止上面提到的,還有更多更強(qiáng)大定位策略,有興趣的可以繼續(xù)深入研究。官方說法,css定位更快,語法更簡(jiǎn)潔,但是xpath更直觀,更好理解一些。


    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多