我需要Selenium选择从抓取中获得的VALUE菜单。 这是下拉菜单的HTML代码部分:
<select class="graySelect" name="sch_bub_nm" id="sch_bub_nm"
title="Case Number" onchange="onChangeBub();">
<option value="000100">Case1</option>
<option value="000200">Case2</option>
<option value="000201">Case3</option>
.
.
.
这是我到目前为止编写的代码:
def MenuChoose():
driver.find_element_by_css_selector('#sch_bub_nm').click()
driver.find_element_by_xpath("//*[@id="sch_bub_nm"]/option[1]")
如您所见,我试图选择菜单,但由于xpath
没有显示我可以将代码定向到的值,我陷入了困境。
答案 0 :(得分:2)
您需要创建一个select元素才能与其进行交互。
from selenium.webdriver.support.ui import Select
select = Select(driver.find_element_by_css_selector('#sch_bub_nm'))
select.select_by_index(1) # Choose the position you want
查看selenium-python文档以查看更多选择选项。
答案 1 :(得分:1)
您应该使用Select
来获取下拉值。我给了3个选择值的选项。
from selenium.webdriver.support.select import Select
select=Select(driver.find_element_by_id("sch_bub_nm"))
select.select_by_index(1) #select index value
select.select_by_visible_text("Case2") # select visible text
select.select_by_value("000201") # Select option value
让我知道是否可行。