Selenium 在無法在 HTML DOM 中定位元素時會出現「NoSuchElementException」。在這種情況下,您在使用 Chrome 使用 Selenium 玩 QWOP 時遇到此錯誤。
您提供的 Selenium 程式碼使用「find_element_by_id」來定位「window1」元素。但是,此定位器可能無法唯一標識 DOM 中的元素,從而導致「NoSuchElementException」。
要解決此問題,您可以使用更具體的定位器策略,例如:
此外,確保元素可見且位於視口內在嘗試找到它之前。如有必要,請使用具有預期條件(如 element_to_be_clickable)的 WebDriverWait 來等待元素可點擊,然後再與其互動。
在這種特定情況下,您需要等待「window1」畫佈在單擊之前可單擊:
WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH, "//canvas[@id='window1']"))).click()
以上是為什麼在 Chrome 中使用 Selenium 時會出現「selenium.common.exceptions.NoSuchElementException」?的詳細內容。更多資訊請關注PHP中文網其他相關文章!