2016-09-10 49 views
0

我一直在Firefox上使用Selenium和Python2.7。如何識別並切換到Selenium中的幀源?

我希望它像下面一樣工作,但我不知道如何編寫代碼。

Driver.get('https://video-download.online') 
Url='https://www.youtube.com/watch?v=waQlR8W8aTA' 
Driver.find_element_by_id("link").send_keys(Url) 
Driver.find_element_by_id("submit").click() 
time.sleep(5) 
#[Click]lowermost(highest quality) radio button 
#[Click]Proceed button 
+0

你能在這裏分享HTML代碼對於單選按鈕,然後繼續執行按鈕aa以及框架 –

+0

請解釋您嘗試執行的操作與此代碼的不同之處。 –

回答

0

您可以在iframes標記中指定的HTML代碼中獲取幀定位符值。你可以從你的定位器值在HTML代碼中存在的位置向上移動。

此功能適用於:

def frame_switch(css_selector): 
    driver.switch_to.frame(driver.find_element_by_css_selector(css_selector)) 

如果你只是想切換到基於該name屬性框,那麼你可以使用這個:

def frame_switch(name): 
    driver.switch_to.frame(driver.find_element_by_name(name)) 
+0

您的回覆謝謝,但我不知道如何檢查此網站的框架屬性(名稱,css_selector)... – User8392

+0

我試過這個,但沒有成功。 driver.switch_to.frame(driver.find_element_by_css_selector('table [id =「136-wrapper」]')。click()) – User8392

+0

並且這也不起作用。 driver.switch_to_frame(driver.find_element_by_css_selector(「iframe」)) driver.find_element_by_css_selector(「。136-wrapper」)。click() – User8392