html:
<div class="xxxx">
<a href="ooooo.pdf"></a>
</div>
Python selenium 代碼試用:
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC
print(wait.until(EC.element_to_be_clickable((By.CSS_SELECTOR, "div.xxxx a"))).get_attribute('href'))
輸出:
aaaaa.pdf
如何列印ooooo.pdf和aaaaa.pdf?
我想列印更多鏈接,我該怎么辦?
uj5u.com熱心網友回復:
element_to_be_clickable()回傳單個 WebElement,因此href僅列印第一個匹配元素的屬性。
解決方案
要提取所有屬性值,您必須為visibility_of_all_elements_located()href引入WebDriverWait,您可以使用以下任一定位器策略:
使用CSS_SELECTOR:
print([my_elem.get_attribute("href") for my_elem in WebDriverWait(driver, 10).until(EC.visibility_of_all_elements_located((By.CSS_SELECTOR, "div.xxxx a")))])使用XPATH:
print([my_elem.get_attribute("href") for my_elem in WebDriverWait(driver, 20).until(EC.visibility_of_all_elements_located((By.XPATH, "//div[@class='xxxx']//a")))])
選擇
作為替代方案,您也可以嘗試:
使用CSS_SELECTOR:
print([my_elem.get_attribute("href") for my_elem in driver.find_elements(By.CSS_SELECTOR, "div.xxxx a")])使用XPATH:
print([my_elem.get_attribute("href") for my_elem in driver.find_elements(By.XPATH, "//div[@class='xxxx']//a")])
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/461988.html
標籤:Python 硒 硒网络驱动程序 网络驱动程序等待 获取属性
