簡體   English   中英

找不到按鈕元素,selenium,python

[英]cannot find button element, selenium, python

已經嘗試通過 xpath,class_name,name,tag_name,一切,但找不到這個元素。 html 代碼就像這樣。

<button class ="btn btn-submit" type="submit" class="btn btn-submit" name="submitBtn">Crear cuenta</button>

我不知道為什么找不到元素,這里是我試圖找到元素的代碼示例

self.driver.find_element_by_xpath("//*[@id='app']/div/footer/button").click()

由於您傳遞的 web 站點有一個加載屏幕,因此您要抓取的元素不可用於交互。

為此,您可以使用 selenium web 驅動程序預期條件。

這里有一個關於如何使用的使用示例。

from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC
...
element = WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.ID, "dtListaEntidade")))
# do your stuff with elements

在我的示例中,我想要抓取的元素是dtListaEntidade

  1. 我告訴webdriver等待該元素的出現 10 毫秒
  2. 檢查元素是否可用
  3. 做 1. 再次

這會在拋出 TimeoutException 之前等待最多 10 秒,除非它找到要在 10 秒內返回的元素。

默認情況下,WebDriverWait 每 500 毫秒調用一次 ExpectedCondition,直到它成功返回。

這是來自selenium 文檔等待的文檔

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM