十六.python+selenium之Select模块定位select+option标签

使用Selcet需要导入该模块的包

导入模块方法:from selenium.webdriver.support.select import Select

一般使用3种方法来定位:

1.   通过索引来定位: select_by_index()  

2.   通过文本值来定位:select_by_visible_text()  

3.   通过value值来定位: select_by_value()

通过百度设置中的搜索设置来举例,这里有一个select+option的下拉框,若需要选择点击每页显示20条,如何操作?

以下为代码演示:

#coding:utf-8
from selenium import webdriver
from selenium.webdriver.support.select import Select #导入Select包
from selenium.webdriver.common.action_chains import ActionChains #导入鼠标事件包
from time import sleep
bro = webdriver.Chrome()
bro.maximize_window()
bro.get("https:www.baidu.com")
bro.implicitly_wait(10)
a = bro.find_element_by_link_text("设置")
ActionChains(bro).move_to_element(a).perform() #通过鼠标移动到设置上进行操作
bro.find_element_by_link_text("搜索设置").click()
sleep(3) #在使用谷歌浏览器时发现加入了休眠时间下面运行时才能找到元素
s = bro.find_element_by_id("nr")#这里先找到select的标签的id
#格式 Select(对应元素).select_by_对应方法("方法的对应值")
#Select(s).select_by_index("1") #通过索引定位(从0开始计数)
# Select(s).select_by_visible_text("每页显示20条") #通过文本值定位
Select(s).select_by_value("20") #通过value值定位
sleep(2)
bro.quit()

猜你喜欢

转载自blog.csdn.net/Static_at/article/details/81463072