selenium定位偽類元素::before


前言

平時用selenium的時候一般都是直接用xpath獲取需要點擊的元素的位置
但是的項目里用到了一個元素,檢查以后發現是個偽元素
網上百度查的方法都不管用,思路也沒有說明白,導致摸索了很長時間
感謝博主提供的思路:點擊跳轉

實現

我們先看下具體的栗子,這里我選用的是【百度疫情實時大數據報告】,后期可能會過期,但具體思路大家明白就好。

打開網址,默認是選中的是【默認確診】,這里我想點擊【累計確診】。
我們可以看到,當前元素是屬於label標簽的

使用css選擇器時,選擇的是“div節點”(父節點)的位置,然后再在div(父節點)的選擇后邊加上div的子節點“i”(偽元素存在的節點)

所以我們的css選擇器的寫法是:div.Virus_1-1-264_3W7bs_>label,這里的意思就是(父類div.父類calss>子元素label)

import time

from selenium import webdriver

driver = webdriver.Chrome()
driver.get('https://voice.baidu.com/act/newpneumonia/newpneumonia/?qq-pf-to=pcqq.group')
# 如果需要切換回【現有確診】,只需要重復執行這段代碼。
driver.find_element_by_css_selector('div.Virus_1-1-264_3W7bs_>label').click()

time.sleep(3)
driver.close()


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM