2014-10-27 59 views
0

我得到這樣的問題:如何使用Python Selenium處理多個選擇標記?

我需要使用Selenium配置頁面上的所有選項。 我需要使用Python Selenium中的Select類。 這裏是例子:

select = (Select(driver.find_elements_by_css_selector('select')) 
select.select_by_index(2) 

我沒有得到任何東西! 我認爲Select只適用於一個元素。什麼時候,當我需要配置ALL選擇這種方式? 謝謝!

+2

你能顯示包含'select'標籤相關的HTML代碼?謝謝。 – alecxe 2014-10-27 12:50:13

+0

當你說'Select class'時,你的意思是一個CSS類(而不是'select' html元素)?如果它的CSS,那麼你需要添加'.'前綴,即'find_elements_by_css_selector('。select')' – StuartLC 2014-10-27 12:55:48

+0

它可以是任何SELECT標籤! 我需要遍歷每一個! – SemoleX 2014-10-27 14:56:03

回答

1

您可以爲此創建一個生成器;這樣你就可以重複,而包裹的元素:

selects = driver.find_elements_by_css_selector('select') 
def wrapped_selects(): 
    for element in selects: 
     yield Select(element) 

或者你可以用他們都:

selects = map(Select, driver.find_elements_by_css_selector('select')) 
相關問題