当前位置: 首页 > 知识库问答 >
问题:

无法使用Selenium WebDrive定位元素

陆弘光
2023-03-14

我有一个粘性导航栏,它有几个列表元素,每个元素都包含href元素。当我试图定位元素时,我得到了错误。以下是我的HTML代码:

 <div class="nav" id="sticky">
                <div class="container">
                    <ul class="main-nav">
                        <li><a href="Dashboard.aspx">Dashboard</a></li>
                        <li><a href="../MEFAcademicDash/StudentUI/StudentHome.aspx"
                            title="Academic Dashboard">Academic</a></li>
                        <li><a href="Notices.aspx">Notices</a></li>

我想通过Webdriver定位Academic,我遇到这样的错误无法定位元素。

org.openqa.selenium.NoSuchElementException: Unable to locate element: /html/body/div/form/div[5]/div[1]/ul/li[2]/a

共有2个答案

谭昱
2023-03-14

您可以尝试下面提到的xpath吗?

//*[text() = 'Academic']

此外,使用操作驱动程序执行单击操作

方琦
2023-03-14

根据您共享的HTML,您需要引导WebDriverWait使元素可见/可单击。要单击与text Academic的链接,可以使用以下代码行:

new WebDriverWait(driver, 20).until(ExpectedConditions.elementToBeClickable(By.xpath("//div[@class='nav' and @id='sticky']/div[@class='container']/ul[@class='main-nav']//li/a[@title='Academic Dashboard' and contains(@href,'../MEFAcademicDash/StudentUI/StudentHome.aspx')]"))).click();
 类似资料:
  • 我对selenium WebDriver非常陌生,我试图自动化一个页面,它有一个名为“删除日志文件”的按钮。使用FireBug我了解到,HTML被描述为 css选择器也使用firepath定义为“#DeletelogButton” 请帮助我解决这个问题。

  • 下面是selenium找不到元素的代码。 但不知何故,它失败了,对我不起作用。它总是给我以下例外情况:过时的元素引用:元素未附加到页面文档 添加了--GetElementStextList的代码 感谢任何帮助。谢谢

  • 我想在selenium中找到我的文本字段,但我不知道如何找到(我第一次使用sellenium)。 我试过: 或者通过xPath和cssSseltor String在dev工具中由chrome生成。 请帮助我,我将感谢解释。 这是html:

  • 我试图从一个网站获得一些数据,但得到以下错误。它昨晚起作用了,但当我今天重新运行时,它突然无法定位元素。今天,我尝试了几乎我可以,但无法解决它。 工具和语言-Python、Selenium、Chrome、Chromedriver、AWS Cloud 9、EC2 错误消息 我试过下面的东西 增加和减少睡眠时间。增加和减少睡眠时间 提到各种网站仍然无法解决。我是python新手。

  • 嗨,我是一个相当新的硒。可以有人请建议如何定位和元素在iframe asi是得到错误下面。 带有Iframe标记的DOM按钮元素的屏幕截图 以前编写的代码

  • 问题内容: 我正在尝试搜寻房地产网站上的商品。它有一个aspx表单,必须在提交之前填写。 http://www.cbre.us/PropertyListings/Pages/Properties-for- Sale.aspx 我只关心俄勒冈州的多户家庭财产。所以这是我的第一次尝试: 当我运行此脚本时,出现错误“找不到元素“ ForSalePropertyType”。在这里我在做什么错? 问题答案: