所以我想通過類名來選擇一個元素,問題是有兩個名字相同的元素,但其中一個有附加的東西:
<div class="ads-title ads-year">
???? -
<span>??????</span></div>
<div class="ads-title">??? ???? ELX XUM</div>
我寫的代碼是為了獲得ONLY 'ads-title' :
driver = webdriver.Chrome(r"./chromedriver"/span>)
driver.get('https://mashinbank.com/خرید-خودرو')
names = driver.find_elements_by_class_name('ads-title')
for name in names:
print(name.text)
但它給了我這兩個的內容,我的問題是如何縮小它的范圍,只包括'ads-title'而不包括'ads-title ads-year'? 謝謝你。
uj5u.com熱心網友回復:
你可以把它替換成一個css_selector來定位只有一個匹配的節點。
div[class='ads-title']
代碼中 :-
names = driver.find_elements_by_css_selector("div[class='ads-title']")
for name in names:
print(name.text)
但是我看到通過上面的css選擇器,有15個匹配節點。
如果你正在尋找特定的節點,這是
<div class="ads-title"> ??? ???? ELX XUM</div>
然后你可以使用這個xpath
//div[@class='ads-title' and text()='??? ???? ELX XUM']
代碼中 :
driver.get('https://mashinbank.com/خرید-خودرو')
names = driver.find_elements_by_xpath("//div[@class='ads-title' and text()='??? ???? ELX XUM']")
for name in names:
print(name.text)
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/309752.html
標籤:
