硒webdriver的定位元素我想用Python硒的webdriver做到以下幾點: -不能與蟒蛇
- 打開Facebook的
- 登錄
- 點擊並打開它有用戶窗格「註銷」選項
的小箭頭打開用戶窗格
我寫了下面的腳本
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
driver=webdriver.Firefox()
def open_url(url):
driver.get(url)
assert "Facebook" in driver.title
def login(user_id,user_pass):
elem_id=driver.find_element_by_name("email")
elem_id.clear()
elem_id.send_keys(user_id)
elem_pass=driver.find_element_by_name("pass")
elem_pass.clear()
elem_pass.send_keys(user_pass)
elem_pass.send_keys(Keys.RETURN)
def search():
wait=WebDriverWait(driver,30)
pane=driver.find_element_by_id("userNavigationLabel").click()
open_url("https://www.fb.com")
login("myuserid","mypass")
search()
以下錯誤是什麼,我得到
selenium.common.exceptions.NoSuchElementException: Message: Unable to
locate element: [id="userNavigationLabel"]
我應該如何定位元素?
你沒有使用'WebDriverWait'正確,您可以使用下面提及的代碼行數爲您註銷腳本工作。它應該看起來像'WebDriverWait(driver,30).until(EC.presence_of_element_located((「userNavigationLabel」,By.ID))' –
現在我收到以下內容:'selenium.common.exceptions.WebDriverException:Message:未知的定位器策略 userNavigationLabel' – zahlen
對不起,我倒退了,應該是'(By.ID,「userNavigationLabel」)' –