對於select>option結構的下拉列表定位總結以下兩種方法:
1.定位父元素select,然后通過tag name找到所有option,得到option元素的數組,然后通過數組索引定位,最后click.
driver.find_element_by_id("test").find_elements_by_tag_name("option")[0].click();
2.用到了Select類, 實例select對象有很多方法:
deselect_all(),全不選。
deselect_by_index(index),不選第 index 項。或者是 index+1項,忘了index從0 還是從1 開始了。
deselect_by_value( value),不選元素value屬性為value的項,聽着有點拗口,其實value值就是option標簽中value的值。
deselect_by_visible_text( text),不選標簽innerHTML為text的option
select_by_index( index),同上,選擇第 index 項。這個用於 option的text和value不固定的情況
select_by_value( value), 同上,選擇。
select_by_visible_text( text),同上,選擇。
from selenium.webdriver.support.ui import Select select = Select(driver.find_element_by_id("test")) select.select_by_visible_text("Edam")