如何通过xpath检索下拉列表中的文本

use*_*650 3 selenium xpath selenium-webdriver

我想指定xpath到我的网页的元素.

<select id=groupSelect>
   <option value="data" >First value</option>
    <option value="data" >second value</option>
</select>
Run Code Online (Sandbox Code Playgroud)

我想得到"第一个值",这是选项中的文本.但我不知道如何获取文本.

By.xpath("//select[@id='groupSelect']/option[@value=???']"))
Run Code Online (Sandbox Code Playgroud)

ale*_*cxe 6

selenium可以处理select/option在一个很好的和方便的方式.

以下是如何通过可见文本选择选项(例如在java中):

Select select = new Select(driver.findElement(By.id("groupSelect")));
select.selectByVisibleText('First value');
Run Code Online (Sandbox Code Playgroud)

如果你还是希望有一个基于XPath的解决方案,您可以检查选项valuetext:

By.xpath("//select[@id='groupSelect']/option[@value='data' and . = 'First value']")
Run Code Online (Sandbox Code Playgroud)

或者通过索引得到它:

By.xpath("//select[@id='groupSelect']/option[1]")
Run Code Online (Sandbox Code Playgroud)

或者你可以检查两者.