首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >使用selenium python从下拉选项中选择值

使用selenium python从下拉选项中选择值
EN

Stack Overflow用户
提问于 2014-03-20 13:59:55
回答 2查看 55.6K关注 0票数 24

我想从下拉选项中选择一个值。html如下:

代码语言:javascript
复制
<span id="searchTypeFormElementsStd">

    <label for="numReturnSelect"></label>
    <select id="numReturnSelect" name="numReturnSelect">
        <option value="200"></option>
        <option value="250"></option>
        <option value="500"></option>
        <option selected="" value="200"></option>
        <option value="800"></option>
        <option value="15000"></option>
        <option value="85000"></option>
    </select>

</span

我尝试的方法如下:

代码语言:javascript
复制
find_element_by_xpath("//select[@name='numReturnSelect']/option[text()='15000']").click()

它有什么问题?请帮帮我!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-03-20 14:18:30

Adrian Ratnapala是对的,我也会选择id而不是name,所以你可以尝试以下方法:

代码语言:javascript
复制
find_element_by_xpath("//select[@id='numReturnSelect']/option[@value='15000']").click()

代码语言:javascript
复制
find_element_by_css_selector("select#numReturnSelect > option[value='15000']").click()

您可以使用select_by_value(value)

代码语言:javascript
复制
Select(driver.find_element_by_css_selector("select#numReturnSelect")).select_by_value(15000).click()

有关Select的更多信息,请单击此处。

票数 43
EN

Stack Overflow用户

发布于 2017-04-12 21:24:34

代码语言:javascript
复制
from selenium.webdriver.support.ui import Select
driver = webdriver.Ie(".\\IEDriverServer.exe")
driver.get("https://test.com")
select = Select(driver.find_element_by_xpath("""//input[@name='n_name']"""))
select.select_by_index(2)
select.select_by_visible_text('Visible Text')
select.select_by_value('value')

它会工作得很好

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22524621

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档