gpt4 book ai didi

python - 需要从下拉菜单中单击文本才能更改下拉菜单中的默认选项

转载 作者:行者123 更新时间:2023-12-01 01:38:38 25 4
gpt4 key购买 nike

我是 python 和 selenium webdriver 的新手。 html代码示例结构为

<li class="dropdown env-dropdown">
::before
<a class="dropdown-toggle" href="">
<i class="nav-icon fa fa-plug">
::before
</i>
<span id="configured-env">ENVNAME1</span>
</a>

<ul class="dropdown-menu env-dropdown-menu env-menu-scroll">
<input id="selectedEnv" name="envConfigV0.userPreference.env.environmentId" value="" type="hidden>

<li>
<div class="spinner-container" style="display:block;"> </div>
<i class="fa fa-refresh fa-spin spinner-tsg"></i>
</div>
</li>

<li class="env-data">
<a id="environmentList0" class="dropdown-toggle" onclick="confirmEnvironmentChange{0}" href="#" data-toggle="modal">
ENVNAME0
<input id ="environmentId0" name="#env.name" value="11" type="hidden">
</a>
</li>
<li class="env-data divider"></li>

<li class="env-data">
<a id="environmentList2" class="dropdown-toggle" onclick="confirmEnvironmentChange{2}" href="#" data-toggle="modal">
ENVNAME2
<input id ="environmentId2" name="#env.name" value="6" type="hidden">
</a>
</li>
<li class="env-data divider"></li>

<li class="env-data">
<a id="environmentList3" class="dropdown-toggle" onclick="confirmEnvironmentChange{3}" href="#" data-toggle="modal">
ENVNAME3
<input id ="environmentId3" name="#env.name" value="9" type="hidden">
</a>
</li>
<li class="env-data divider"></li>
</ul>
::after
</li>

默认配置的环境是下拉菜单 env-dropdown 下的 ENVNAME1。我可以使用以下代码将鼠标悬停在下拉菜单上:

env_dropdown = self.driver.find_element_by_xpath('//li[@class = "dropdown env-dropdown"]')
ActionChains(self.driver).move_to_element(env_dropdown).perform()

我想通过单击文本“ENVNAME2”将配置的环境更改为 ENVNAME2。但在尝试了各种选择后我无法实现这一目标。请您帮我解决这个问题。

最佳答案

此下拉菜单不是使用 select 和 options 标签制作的。所以,从 selenium 中选择类是行不通的。

解决方法是:

  1. 使用 selenium 单击下拉菜单
  2. 将每个元素存储在列表中,并将其与您所需的文本一一匹配。如果发生匹配,则只需单击它即可。

我提供了第 2 部分的代码,您可以为第 1 部分编写自己的代码。

drop_down = self.driver.find_elements_by_css_selector("li.env-data a")
for values in drop_down:
if values.text==ENVNAME2:
values.click()

关于python - 需要从下拉菜单中单击文本才能更改下拉菜单中的默认选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52147253/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com