Selenium之下拉框操作

下拉框操作:

      一般下拉框适用场景:在新增时有下拉框选项,在二级联动或多级联动有下拉(比如:在选择省市县时的多级联动下拉)。

      下拉框选择都有select的标签属性,存在两个属性select和option。如:

 

     其类型有:

      ①单选下拉框,可以选择一个元素。

      ②多选下拉框,可以选择多个元素。

     定位方法:

      ①直接定位

      ②二次定位。先定位到select框,再定位到select选项。

      ③导入Select模块(推荐使用) -- 根据属性或者索引来定位。

         先要导入Select方法     from selenium.webdriver.support.ui import Select 。

         然后通过索引:s = driver.find_element_by_id('nr')

                                  Select(s).select_by_index(2)

         通过value值定位:s = driver.find_element_by_id('nr')

                                       Select(s).select_by_value('20')

         通过text值来定位:s = driver.find_element_by_id('nr')

                                        Select(s).select_by_visible_text('宝马')

下面附上ms.html代码截图:

       

 

通过selenium实现:

import time 

from selenium import webdriver

from selenium.webdriver.support.ui import Select    # 导入Select模块

# 指定驱动

driver = webdriver.Chrome(r"C:\webdriver\chromedriver.exe")

# 打开网址

driver.get('file:///C:/Users\Administrator/PycharmProjects/1120/web_driver/lesson3/ms.html')

# 获得相应的webElement

select = Select(driver.find_element_by_id('multi'))

# 先取消所有选择的选项

select.deselect_all()

# 根据text值定位

select.select_by_visible_text('雅阁')

select.select_by_visible_text('宝马 740')

# 获得相应的webElement

select = Select(driver.find_element_by_id('single'))

# 根据value值定位

select.select_by_value('male')

 

driver.quit()

posted @ 2019-11-19 11:50  呸呸裴  阅读(710)  评论(0编辑  收藏  举报