以该网站为例:https://www.17sucai.com/pins/demo-show?id=5926
该网页下存在多个可供测试的下拉框。
基本脚手架代码:
from selenium.webdriver.support.ui import Select from selenium import webdriver import time driver = webdriver.Chrome() driver.get('https://www.17sucai.com/pins/demo-show?id=5926') # 切换到iframe driver.switch_to.frame(driver.find_element_by_id('iframe'))
定位下拉框(以第一个下拉框为例)
Select()方法
select_elm = Select(driver.find_element_by_class_name('nojs'))
不推荐这样定位:
select_elm = driver.find_element_by_class_name('nojs').click()
选中下拉框,点击:
driver.find_element_by_xpath('//option[@value="JP"]').click()
第一个下拉框的可选值如图所示:
选择下拉框中的值,有以下三种方法
1.根据索引选择
select_elm.select_by_index(2)
符合索引规则,从0开始计数,自动选择了Canada
值。
2.根据值选择
select_elm.select_by_value('CA')
这里的值指的是value
属性,而不是文本字符串。
运行结果同上。
3.根据可视的文本选择
select_elm.select_by_visible_text('Canada')
即看到的是什么,选择的就是什么。
运行结果同上。