# radio框、checkbox框、select框
from selenium import webdriver
from selenium.webdriver import ActionChains
from selenium.webdriver.common.by import By
from selenium.webdriver.support.select import Select
wd = webdriver.Chrome()
wd.get('https://cdn2.byhy.net/files/selenium/sample2.html')
# radio框
# 获取当前选中的元素 checked="checked"
# element = wd.find_element(By.CSS_SELECTOR, '#s_radio input[checked=checked]')
# print('当前选中的是: ' + element.get_attribute('value'))
# 选择小雷老师后点击,完成选择
wd.find_element(By.CSS_SELECTOR, '#s_radio input[value="小雷老师"]').click()
# checkbox框
# 先把 已经选中的选项全部点击一下 checked="checked"
elements = wd.find_elements(By.CSS_SELECTOR, '#s_checkbox input[checked="checked"]')
for element in elements:
element.click()
# 再点击 小雷老师 完成选择
wd.find_element(By.CSS_SELECTOR, "#s_checkbox input[value='小雷老师']").click()
# 创建Select对象
select = Select(wd.find_element(By.ID, "ss_single"))
# select框 --单选
# 通过 Select 对象选中小雷老师
# 根据可见文本选择 select_by_visible_text('xx')
# 根据value选择 select_by_value
# 根据次序(从1开始)选择 select_by_index('xx')
select.select_by_visible_text("小雷老师")
# select框 --多选
# 清除所有 已经选中 的选项
select.deselect_all()
# 选择小雷老师 和 小凯老师
select.select_by_visible_text("小雷老师")
select.select_by_visible_text("小凯老师")