2016-10-18 40 views
1

我正嘗試使用硒登入ESPN網站。這裏是我的代碼到目前爲止來自螢火蟲的Python Selenium Xpath未找到

from selenium import webdriver 
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() 
driver.maximize_window() 

url = "http://www.espn.com/fantasy/" 
driver.get(url) 

login_button = driver.find_element_by_xpath("/html/body/div[6]/section/section/div/section[1]/div/div[1]/div[2]/a[2]") 
login_button.click() 

try: 
    element = WebDriverWait(driver, 10).until(
     EC.presence_of_element_located((By.XPATH, "/html/body/div[2]/div/div/section/section/form/section/div[1]/div/label/span[2]/input"))) 
except: 
    driver.quit() 

基本上,有2個步驟,首先我必須單擊登錄按鈕,然後我必須填寫表單。目前,我點擊登錄按鈕,表單彈出,但我找不到表單。我一直在使用螢火蟲來獲取xpath,正如其他SO問題所建議的。我不太瞭解硒,所以我不知道在哪裏尋找

+2

形式的iframe中彈出。您需要切換到iframe,然後才能到達其中的元素。 –

+0

你怎麼知道,對於未來的問題,如我應該尋找什麼等 – qwertylpc

+0

@qwertylpc,你應該檢查是否有一個祖先元素的標記爲''或'