所以我正在嘗試訪問一個搜索頁面,該頁面涉及點擊頁面底部的可點擊鏈接。我的代碼似乎能夠找到鏈接或至少在嘗試時不會拋出錯誤,但是我收到錯誤“AttributeError: 'WebElement' object has no attribute 'Click'”,即使該元素在頁面上可物理點擊. 這是代碼和網站。
driver = webdriver.Edge(r'C:/Users/User/Desktop/Anaconda/edgedriver_win32/msedgedriver')
driver.get("https://www.canada.ca/en/environment-climate-change/services/species-risk-public-registry/cosewic-assessments-status-reports")
#click on the "Search COSEWIC status reports" button
element = WebDriverWait(driver, 10).until(
EC.presence_of_element_located((By.LINK_TEXT, "Search COSEWIC status reports"))
)
link = driver.find_element_by_link_text("Search COSEWIC status reports");
link.Click();
如果我對這個元素可點擊有誤,請告訴我。為了清楚起見,我試圖點擊鏈接“搜索在網頁底部找到的 COSEWIC 狀態報告”https://www.canada.ca/en/environment-climate-change/services/species-risk-public-注冊表/cosewic-評估-狀態-報告”
更新
我找到了一種解決方法,但問題仍然存在。我遇到了另一個需要點擊的屬性,它似乎沒有屬性“id”或任何易于識別的屬性。
<span data-v-7ee3c58f="" >COSEWIC Status Appraisal Summary on the Pacific Water Shrew <em>Sorex bendirii</em> in Canada</span>
我曾嘗試將 XPath 復制到此元素和 XPath 中的 id,但它們似乎不起作用。這是頁面上的第一個結果。“https://species-registry.canada.ca/index-en.html#/documents?documentTypeId=18&sortBy=documentTypeSort&sortDirection=asc&pageSize=10&keywords=pacific water shrew”
uj5u.com熱心網友回復:
你的語言bing是 Python所以Click()你不需要使用click()
此外,要單擊可點擊元素而不是Presence_of_element_located(),您需要為element_to_be_clickable()引入WebDriverWait,您可以使用以下任一定位器策略:
driver = webdriver.Edge(r'C:/Users/User/Desktop/Anaconda/edgedriver_win32/msedgedriver')
driver.get("https://www.canada.ca/en/environment-climate-change/services/species-risk-public-registry/cosewic-assessments-status-reports")
#click on the "Search COSEWIC status reports" button
WebDriverWait(driver, 10).until(EC.element_to_be_clickable((By.LINK_TEXT, "Search COSEWIC status reports"))).click()
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/376140.html
下一篇:統一變數獲得無窮大
