我有一个奇怪的问题。我有一个下拉元素,我想选择值"否"。我的Selenium Python代码不会选择值" No"。
我试图点击元素以查看点击是否有效以及元素是否可以与之交互,可见等。
点击工作,下拉元素打开。
我的Selenium Python代码是:
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support.ui import Select
def select_use_for_matching_dropdown(self, value):
# Params value: The value for the Matching drop down Yes or No
try:
select = Select(WebDriverWait(self.driver, 20).until(EC.element_to_be_clickable((By.ID, 'data_configuration_edit_data_object_tab_details_lb_use_for_match'))))
select.select_by_visible_text(str("No"))
except NoSuchElementException, e:
print "Element not found "
print e
self.save_screenshot("select_use_for_matching_dropdown")
HTML是:
<select id="data_configuration_edit_data_object_tab_details_lb_use_for_match" class="gwt-ListBox marginright">
<option value="yes">yes</option>
<option value="no">no</option>
<option value="exclude data categories">exclude data categories</option>
</select>
还有其他方法我可以尝试选择值&#34;否&#34;
我也试过
select = Select(self.driver.find_element_by_id('data_configuration_edit_data_object_tab_details_lb_use_for_match'))
select.select_by_visible_text('No')
谢谢Riaz
答案 0 :(得分:1)
不确定Python驱动程序中的大写是否重要,但实际值是小写的“否”,因此您可能想尝试
select.select_by_visible_text('no')
答案 1 :(得分:1)
尝试下面的任何一个: -
select.select_by_visible_text('no')
OR
select.select_by_value('no')
希望它会对你有所帮助:)。
答案 2 :(得分:0)
希望这段代码对您有所帮助。
from selenium.webdriver.support.ui import Select
select= Select(driver.find_element_by_id('id_of_element'))
从给定的下拉列表中选择“否”选项
select.select_by_index(1)
select.select_by_value('no')
select.select_by_visible_text('no')