当前位置: 首页 > 面试题库 >

选择标记样式属性设置为显示时,如何从下拉列表中检索值:在pythonselenium中

终睿
2023-03-14
问题内容

我正在尝试从一个站点中删除下拉列表的所有类别组合。但是,选项的文本属性仅作为空白出现。尽管在检查时,我可以看到每个选项都包含文本。

from selenium import webdriver
from selenium.webdriver.support.ui import Select

driver = webdriver.Chrome()
driver.get('https://www.fiyo.nl/')

driver.find_element_by_xpath('//*[@id="select_device_chosen"]/a').click()
select = Select(driver.find_element_by_xpath('//*[@id="select-device"]'))
print ([o.text for o in select.options])

输出:

['', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '']

如果我收到文字,则想遍历所有值以获取其他下拉菜单的不同组合。


问题答案:

<select>标签具有 风格 属性集为 显示:无; 因此您可以使用以下代码块来打印选项:

driver.find_element_by_xpath('//*[@id="select_device_chosen"]/a').click()
element = driver.find_element_by_xpath("//select[@id='select-device']")
driver.execute_script("arguments[0].removeAttribute('style')", element)
select = Select(driver.find_element_by_xpath("//*[@id='select-device']"))
print ([o.text for o in select.options])


 类似资料:
  • 我想点击div[@id='main_filter'],然后从下拉菜单中选择一个li元素。 我正在创建一个用于SelectFromDropDown的泛型方法。 我的解决方案:private IWebElement parentFilter=>Driver.FindElement(By.xpath(“//div[@id='main_filter'][1]/span”));

  • 我有一个用来选择某些元素的代码,当你点击geticon按钮并显示正确的选项值时,该代码工作得很好。问题是我不确定如何显示下拉菜单的选择选项值(而不是按钮)。 这是我的Jsfiddle null null

  • 我明白我需要用硒,但我不知道怎么用。结果始终是单个字符串的列表。理想情况下,我希望返回两个列表:一个带有unix datestamp(option value=“1576627200”),另一个带有“normal”日期(即18/12/2019)的列表。 任何帮助都将不胜感激。

  • 我想在选择另一个select元素的一个选项时显示一个select元素,在选择另一个选项时隐藏它。 这是JavaScript: 感谢任何帮助。谢谢

  • 在我工作的项目中,有一个包含以下字段的数据库表: 从数据库表中,我想显示在病房中可用的床,但当病房被选中时没有被占用,那么在床选择标签中应该只显示可用的床。 jsp表单select标记代码为: 所以问题是我如何才能做到这一点? 我是新Java发展,这是我的第一个项目,所以请原谅,如果任何愚蠢的错误发现。 谢谢你的帮助,非常感谢。

  • 下面给出了一段表示下拉列表的代码。我需要在此下拉列表中选择日期值,由<代码> 以下方法无效 1。)使用“按导入组织选择”选择此值。openqa。硒。支持用户界面。选择 控制台显示: 元素应该是“选择”,但应该是“选项” 2.)首先单击下拉列表以显示要选择的选项,然后单击该选项。 控制台显示: 调试元素缺少可访问的名称:id:类型,标记名:选择,类名:文本输入ng原始ng未触及ng有效ng范围 3.