HTML:
<div id="related">
<a class="123" href="url">
<h3 class="456">
<span id="id00" aria-label="TEXT HERE">
</span>
</h3>
</a>
<a class="123" href="url">
<h3 class="456">
<span id="id00" aria-label="NOT HERE">
</span>
</h3>
</a>
</div>
我正在嘗試查找并單擊 <a (在其中 SPAN包含“TEXT”div id="related"的AND 內aria-label
items = driver.find_elements(By.XPATH, "//div[@id='related']//a[@class='123'][contains(@href, 'url')]//span[contains(@aria-label, 'TEXT']")
但它沒有找到href,它只是找到了跨度。
然后我想做:
items[3].click()
我怎樣才能做到這一點。
uj5u.com熱心網友回復:
您的 XPath 有一些拼寫錯誤。
嘗試這個:
items = driver.find_elements(By.XPATH, "//div[@id='related']//a[@class='123'][contains(@href,'watch?v=')]//span[contains(@aria-label,'TEXT')]")
這將為您span提供呈現塊內的元素。
要定位a元素,您應該使用另一個 XPath。
UPD
要查找內部具有和包含具有特定屬性的所有a元素,可以像這樣清楚地轉換為 XPath:div@id='related'spanaria-label
items = driver.find_elements(By.XPATH, "//div[@id='related']//a[@class='123' and .//span[contains(@aria-label,'TEXT')]]")
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/438447.html
標籤:Python python-3.x 硒 硒铬驱动程序
