我是靠谱客的博主 悲凉黑夜,最近开发中收集的这篇文章主要介绍Selenium3 Python WebDriver API源码探析(17)下拉框(select)支持概述案例,觉得挺不错的,现在分享给大家,希望可以做个参考。
概述
概述
Selenium
在实现下拉框(select)自动化操作的过程中需要大量代码,因此Selenium
专门针对下拉框(select)提供了API,即seleniumwebdriversupportselect.py
模块中的Select
类。
Select
类的主要元素如下:
__init__(self, webelement)
:构造方法,检测元素是否为下拉框(select),下拉框是否支持多选。options
特性:返回下拉框选项列表。all_selected_options
特性:返回下拉框已选选项列表。first_selected_option
特性:返回下拉框当前选项。select_by_value( value)
方法:根据选项的value属性选择选项。select_by_index( index)
方法:根据选项的索引选择选项。select_by_visible_text( text)
方法:根据选项的文本选择选项。deselect_all()
方法:取消所有已选选项,仅对支持多选的下拉框生效。deselect_by_value(value)
方法:根据选项的value属性取消已选选项,仅对支持多选的下拉框生效。deselect_by_index(self, index)
方法:根据选项的索引取消已选选项,仅对支持多选的下拉框生效。deselect_by_visible_text(text)
方法:根据选项的文本取消已选选项,仅对支持多选的下拉框生效。
案例
import selenium.webdriver as webdriver
from selenium.webdriver.support.select import Select
driver = webdriver.Firefox()
driver.get("https://kns.cnki.net/kns/brief/result.aspx?dbprefix=scdb")
# 定位下拉框元素
select_element = driver.find_element_by_id("txt_1_sel")
# 实例化Select对象
select_object = Select(select_element)
# 检测是否支持多选
print(select_object.is_multiple)
# 输出所有选项文本
print([i.text for i in select_object.options])
# 输出所有选项value属性
print([i.get_attribute("value") for i in select_object.options])
# 输出所有已选选项value属性
print([i.get_attribute("value") for i in select_object.all_selected_options])
# 输出当前已选选项value属性
print(select_object.first_selected_option.get_attribute("value"))
# 选择索引为2的选项
select_object.select_by_index(2)
# 输出当前已选选项value属性
print(select_object.first_selected_option.get_attribute("value"))
# 选择value属性为TI的选项
select_object.select_by_value("TI")
# 输出当前已选选项value属性
print(select_object.first_selected_option.get_attribute("value"))
# 选择文本为全文的选项
select_object.select_by_visible_text("全文")
# 输出当前已选选项value属性
print(select_object.first_selected_option.get_attribute("value"))
driver.quit()
结果为:
None
['主题', '篇关摘', '关键词', '篇名', '摘要', '全文', '被引文献', '中图分类号', 'DOI']
['SU$%=|', 'TKA$%=|', 'KY', 'TI', 'AB', 'FT', 'RF', 'CLC$=|??', 'ZCDOI$=|?']
['SU$%=|']
SU$%=|
KY
TI
FT
最后
以上就是悲凉黑夜为你收集整理的Selenium3 Python WebDriver API源码探析(17)下拉框(select)支持概述案例的全部内容,希望文章能够帮你解决Selenium3 Python WebDriver API源码探析(17)下拉框(select)支持概述案例所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复