无法使用Selenium单击下拉菜单

运气

我试图单击下拉菜单中的链接,但是我一直使用XPATH收到TimeoutException。

test = WebDriverWait(driver, 30).until(EC.element_to_be_clickable((By.XPATH, "/html/body/div/div[1]/div[2]/div/ul/li[4]/ul/li[7]/a")))
driver.execute_script("arguments[0].click();", test)

但是,如果我尝试单击“注销”选项,则脚本有时会起作用。

logOut = WebDriverWait(driver, 30).until(EC.element_to_be_clickable((By.XPATH, "/html/body/div/div[1]/div[2]/div/ul/li[7]/ul/li/a")))
driver.execute_script("arguments[0].click();", logOut)

有3个下拉菜单。该测试位于一个带有约12个选项的菜单中,而注销本身位于另一个菜单中。我想了解我在做什么错。

这是菜单的代码。

<body>
    <div class="container-fluid">

        <div class="row headerLogo">
            <!--<header class="navbar-default navbar-static-top headerLogo">-->
            <div class="col-md-2">
                <div class="vericaltext">WIISCPRD23V</div>
                <a href="/Home" id="linkHome"><img src="/Content/images/Logo_menu2.png" class="logoSea" alt='SEA'  /></a>
            </div>
            <div class="col-md-10">
                <div class="row flat-nav">
                    <li class="color20 effect3">
                        <a><i class="fa fa-comments-o fa-2x"></i><span>Peq</span></a>

                        <ul class="column-based">
                                <li class="color20" style="font-weight:bold">Question</li>
                                            <li><a href="/Quest">Quest</a></li>
                                            <li><a href="/Retr">Retr</a></li>
                                <li class="color20" style="font-weight:bold">Vitss</li>
                                            <li><a href="/Vit">Vit</a></li>
                                <li class="color20" style="font-weight:bold">BC</li>
                                            <li><a href="/Trat">Trat</a></li>
                                            <li><a href="/BC">BC</a></li>
                                <li class="color20" style="font-weight:bold">CAD</li>
                                            <li><a href="/Cad">Ant</a></li>
                                <li class="color20" style="font-weight:bold">Fer</li>
                                            <li><a href="/Add">Add</a></li>
                                            <li><a href="/Emp">Emp</a></li>
                                            <li><a href="/Est">Est</a></li>
                                            <li><a href="/Seg">Seg</a></li>
                                            <li><a href="/Rec">Rec</a></li>
                                            <li><a href="/Cal">Cal</a></li>
                        </ul>
                    </li>
                    <li class="color49 effect3">
                        <a><i class="fa fa-envelope-o fa-2x"></i><span>E-mails</span></a>

            <li class="color5 effect3 divLogout">

                <a>
                    <div style="width:100%;padding-top:15px">
                        <div class="divAlinhadaEsquerda"><i class="fa fa-user-circle fa-3x"></i></div>
                        <div class="divAlinhadaEsquerda">
                            <div class="fontNomUsr">xxx</div> 
                            <div class="fontUser">xxx&nbsp;&nbsp;
                            </div>
                                <div class="fontUlti">xxx</div>
                        </div>
                    </div>
                </a>
                <ul class="column-based">
                    <li><a href="/Home/Logout"><i class="fa fa-power-off"></i><span>Sair</span></a></li>
                </ul>
            </li>
</ul>
SeleniumUser002

您的xpath不正确,请尝试以下解决方案:解决方案1:

from selenium.webdriver.common.action_chains import ActionChains
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

PesquisasElement=WebDriverWait(browser, 10).until(
EC.visibility_of_element_located((By.XPATH, "//*[contains(text(), 'Pesquisas')]")))

TratamentoElement=WebDriverWait(browser, 10).until(
EC.element_to_be_clickable((By.XPATH, "//a[@href='/ManterBC']")))


#Create the object for Action Chains
actions = ActionChains(driver)
actions.move_to_element(PesquisasElement).move_to_element(TratamentoElement).click()
actions.perform()

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

无法通过Java / Selenium单击Bootstrap下拉菜单

来自分类Dev

无法在iframe中单击下拉菜单-Selenium Python

来自分类Dev

Selenium 无法从引导程序下拉菜单中单击菜单项

来自分类Dev

单击下拉菜单

来自分类Dev

HTML标题菜单下拉菜单无法单击

来自分类Dev

如何使用Selenium和Chrome在Python中单击下拉菜单

来自分类Dev

使用PHP Selenium Webdriver在下拉菜单中单击一个选项?

来自分类Dev

Python Selenium:如何使用CSS选择器单击下拉菜单中的链接?

来自分类Dev

下拉菜单可用后,Python Selenium单击按钮

来自分类Dev

Python Selenium-单击下拉菜单后选择

来自分类Dev

不能通过Java / Selenium单击Bootstrap下拉菜单

来自分类Dev

我无法使用CSS下拉菜单

来自分类Dev

我无法使用CSS下拉菜单

来自分类Dev

Tablesorter:无法单击标题中的下拉菜单

来自分类Dev

python硒无法单击下拉菜单中的隐藏元素

来自分类Dev

无法单击下拉菜单项中的元素

来自分类Dev

单击后无法打开Bootstrap下拉菜单

来自分类Dev

无法通过 xpath 单击登录下拉菜单

来自分类Dev

单击下拉菜单滚动

来自分类Dev

无法使用Selenium WebDriver选择共享点站点中的下拉菜单

来自分类Dev

通过使用CSS单击创建下拉菜单

来自分类Dev

单击jQuery或JavaScript菜单下拉菜单

来自分类Dev

无法找到下拉菜单

来自分类Dev

无法找到下拉菜单

来自分类Dev

使用类名选择Selenium Webdriver下拉菜单

来自分类Dev

如何保持下拉菜单处于活动状态并单击 selenium 中 iframes 下可用的子菜单?

来自分类Dev

平板电脑上的基础顶部栏/菜单垂直下拉菜单无法单击

来自分类Dev

Angular JS订单无法使用下拉菜单

来自分类Dev

href无法在下拉菜单中使用-引导程序

Related 相关文章

热门标签

归档