欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python playwright之元素定位示例詳解

 更新時間:2022年07月23日 14:11:25   作者:莫離  
這篇文章主要為大家介紹了python playwright之元素定位示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪

定位篇

UI 自動化很多時候的苦惱都是定位不到,其實說實話我到現(xiàn)在有時候也是莫名其妙的定位到或者定位不到。好在這個框架定位方式的上限非常以及特別的高,這就像人有錢和沒錢的區(qū)別主要在于選擇權(quán)一樣,有選擇的人生才是幸福的。出門想開法拉利就開法拉利,想開拖拉機就開拖拉機。

定位的詳細介紹

1、官方是不推薦 xpath 和 css 的,原話意思是 CSS 和 XPATH 是綁定于 DOM 上的,當(dāng) DOM 結(jié)構(gòu)出現(xiàn)更改他們將失效。

2、文本內(nèi)容,輸入框內(nèi)的 placeholder,labels 等這些我們可以理解成面向業(yè)務(wù)的屬性這些反而不那么容易改變所以定位應(yīng)該盡量的去面向業(yè)務(wù)。

文本選擇器定位

下文這樣是一個基礎(chǔ)的文本定位 特點有

1、模糊匹配

2、不缺分英文的大小寫

3、如果存在多個會報錯

page.locator("text=社區(qū)").click()

也可以使用簡寫的方式,注意其中的單引號

page.locator("'Log in'").click()

比較精準的方式,點擊 id=main-nav-menu 包含的元素里文本='社區(qū)'的元素,這里使用了 text() 偽類

page.locator("#main-nav-menu :text('社區(qū)')").click()

結(jié)合 CSS 使用,僅匹配 article 元素

page.locator('article:has-text("All products")').click()

CSS 選擇器定位

點擊 button 按鈕

page.locator("button").click()

通過屬性定位,點擊屬性中存在 href="/topics"的元素

page.locator('[href="/topics" rel="external nofollow"  rel="external nofollow" ]').click()

通過屬性精準定位:點擊 ID=nav-bar 元素下的 href="/topics"的元素

page.locator('#main-nav-menu [href="/topics" rel="external nofollow"  rel="external nofollow" ]').click()

通過 placeholder 定位以及輸入

page.locator('[placeholder="搜索"]').fill('電子校的故事')

布局定位結(jié)合 CSS,也是我最喜歡的

page.locator("input:right-of(:text('開源項目'))").fill('電子校的故事')

非常的實用,尤其是在我們經(jīng)常測的管理系統(tǒng)里邊 dialog 里,只要左側(cè)的 label 不變~ 代碼就不用改

解釋下上邊這段代碼,大家一邊看代碼一邊把頭往顯示器的右上偏左側(cè)看下。

定位的的呢是一個 Input,一個在文本為'開源項目'右側(cè)的 input。

同理這里可以使用:right-of、:left-of、:above、:below、:near 這幾種布局定位的方式

根據(jù)元素可用

點擊一個可用的 button

page.locator("button:visible").click()
page.locator("button >> visible=true").click()

繼續(xù)說說屬性

點擊一個按鈕,它的文本包含了 Click me。另這里也可使用正則表達式

page.locator("button", has_text="Click me").click()

以上就是python playwright之元素定位示例詳解的詳細內(nèi)容,更多關(guān)于python playwright元素定位的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Python守護進程和腳本單例運行詳解

    Python守護進程和腳本單例運行詳解

    本篇文章主要介紹了Python守護進程和腳本單例運行,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-01-01
  • Python基于BeautifulSoup爬取京東商品信息

    Python基于BeautifulSoup爬取京東商品信息

    這篇文章主要介紹了Python基于BeautifulSoup爬取京東商品信息,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-06-06
  • Python使用redis pool的一種單例實現(xiàn)方式

    Python使用redis pool的一種單例實現(xiàn)方式

    這篇文章主要介紹了Python使用redis pool的一種單例實現(xiàn)方式,結(jié)合實例形式分析了Python操作redis模塊實現(xiàn)共享同一個連接池的相關(guān)技巧,需要的朋友可以參考下
    2016-04-04
  • Python如何使用pymongo連接MongoDB數(shù)據(jù)庫并進行相關(guān)操作

    Python如何使用pymongo連接MongoDB數(shù)據(jù)庫并進行相關(guān)操作

    PyMongo是驅(qū)動程序,使python程序能夠使用Mongodb數(shù)據(jù)庫,使用python編寫而成,下面這篇文章主要給大家介紹了關(guān)于Python如何使用pymongo連接MongoDB數(shù)據(jù)庫并進行相關(guān)操作的相關(guān)資料,需要的朋友可以參考下
    2023-05-05
  • 跟老齊學(xué)Python之不要紅頭文件(1)

    跟老齊學(xué)Python之不要紅頭文件(1)

    紅頭文件,是某國特別色的東西,在python里不需要,python里要處理的是計算機中的文件,包括文本的、圖片的、音頻的、視頻的等等,還有不少沒見過的擴展名的,文件,在python中,是一種對象,就如同已經(jīng)學(xué)習(xí)過的字符串、數(shù)字等一樣。
    2014-09-09
  • 簡單的Apache+FastCGI+Django配置指南

    簡單的Apache+FastCGI+Django配置指南

    這篇文章主要介紹了簡單的Apache+FastCGI+Django配置指南,這也是Python上最流行的web框架Django的最流行搭配環(huán)境:)需要的朋友可以參考下
    2015-07-07
  • 基于Python編寫一個語音合成系統(tǒng)

    基于Python編寫一個語音合成系統(tǒng)

    這篇文章主要介紹了如何利用Python制作一個語音合成系統(tǒng),文中的示例代碼講解詳細,對我們學(xué)習(xí)Python有一定的幫助,感興趣的小伙伴可以了解一下
    2022-03-03
  • Pytorch中關(guān)于BatchNorm2d的參數(shù)解釋

    Pytorch中關(guān)于BatchNorm2d的參數(shù)解釋

    這篇文章主要介紹了Pytorch中關(guān)于BatchNorm2d的參數(shù)解釋,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-12-12
  • 詳解pycharm連接不上mysql數(shù)據(jù)庫的解決辦法

    詳解pycharm連接不上mysql數(shù)據(jù)庫的解決辦法

    這篇文章主要介紹了詳解pycharm連接不上mysql數(shù)據(jù)庫的解決辦法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-01-01
  • AI與Python人工智能遺傳算法

    AI與Python人工智能遺傳算法

    這篇文章主要為大家介紹了AI與Python人工智能遺傳算法的詳解教程,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-05-05

最新評論