selenium select 选择下拉框
实战百度首页设置,浏览偏好设置。
打开首页,在非登录的情况下,查看分析页面元素,我们可以看到,我们首先要点击的是设置,
接着点击,搜索设置,
然后select选择下拉框。
- select_by_index(index)
- select_by_value(value)
- select_by_visible_text(text)
select 选择有上述上中方式,我们根据index,index从0开始。0代表第一个
- import time
- from selenium import webdriver
- from selenium.webdriver.support.select import Select
- d=webdriver.Chrome()
- d.get('http://www.baidu.com/')
- d.find_element_by_xpath('//*[@id="u1"]/a[8]').click()
- d.find_element_by_class_name('setpref').click()
- time.sleep(6)
- s1=Select(d.find_element_by_name("NR"))
- s1.select_by_index(2)
- d.find_element_by_class_name('prefpanelgo').click()
- d.switch_to_alert().accept()
这里需要注意,不退出当前百度页面可以检查配置是否正确,退出来这个界面,在打开百度,这个默认设置无效,
偏好设置只对登录用户长期的保存。
取消选中:
- deselect_by_index(index)
- deselect_by_value(value)
- deselect_by_visible_text(text)
- deselect_all()
此外还提供
- options ——提供所有的选项的列表,其中都是选项的WebElement元素
- all_selected_options ——提供所有被选中的选项的列表,其中也均为选项的WebElement元素
- first_selected_option ——提供第一个被选中的选项,也是下拉框的默认值
等。这是select带给我们的用法。