【xpath】使用 descendant 定位子孫節點

.
.
我們在使用selenium 的xpath方式定位某個元素時,如果這個元素前半部分的路徑是確定的,後半部分的路徑不確定,並且其中有個img節點是需要我們定位出來的,但是不知道它是第幾級子孫節點,這時候就可以用下面的xpath路徑寫法,總結起來就是 ‘//確定的或固定節點/descendant::子孫節點’ 。

descendant 是子孫後裔的意思。

用這個辦法的好處,就是不用管目標節點在幾級子孫節點上,都可以定位。而且可以使用find_elements_by_xpath 查找多個匹配的路徑,可以同時找出符合要求的子節點、孫節點、曾孫節點等。

#定位img元素節點(使用了descendant::xxx)
elem = driver.find_elements_by_xpath(
    '//*[@id="product-box"]/div[2]/section/div[3]/descendant::img')

# 解析出圖片 URL
piclist = []
for e in elem:            
    piclist.append(e.get_attribute("src"))
print(piclist)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章