我目前正在使用 Selenium 和 webdriver 進行專案。到目前為止,我可以使用 selenium 毫無問題地瀏覽網站,但是,我需要單擊特定圖示以滑過日期和時間表。問題是在查看 HTML 時,我不知道要使用 Selenium 找到什么才能單擊該圖示。
HTML 示例:
<a _ngcontent-oyt-c155="" class="btn btn-soft-primary day-selector-navbutton"><i _ngcontent-oyt-c155="" class="fa fa-chevron-right"></i></a>
通常我會按名稱、ID 或類來定位專案,但在這種情況下,我不知道該去哪里找。
我應該尋找 xpath 嗎?
uj5u.com熱心網友回復:
根據您在此處共享的內容,此 XPath 應該可以作業:
'//a[@]//i[@]'
我不能完全確定這個定位器是唯一的還是那里沒有 iframe 等等。
您可能還需要在這里添加某種等待。如果是這樣,您最好使用預期條件顯式等待。
uj5u.com熱心網友回復:
所需的元素是Angular元素,因此要在可點擊元素上單擊() ,您需要為element_to_be_clickable()誘導WebDriverWait,您可以使用以下任一定位器策略:
使用CSS_SELECTOR:
WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.CSS_SELECTOR, "a.btn.btn-soft-primary.day-selector-navbutton > i.fa.fa-chevron-right"))).click()使用XPATH:
WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH, "//a[@class='btn btn-soft-primary day-selector-navbutton']/i[@class='fa fa-chevron-right']"))).click()注意:您必須添加以下匯入:
from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.common.by import By from selenium.webdriver.support import expected_conditions as EC
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/442312.html
上一篇:在find_elements問題中的Pythonfind_element?
下一篇:硒中的隨機值
