我试图在 C# 中使用 Selenium Webdriver 查找元素“导入”。已尝试以下代码但没有找到它。
driver.FindElement(By.XPath("//*[@class='menu_bg']/ul/li[3]")).Click();
driver.FindElement(By.XPath("//*[@id='import']/a")).Click();
driver.FindElement(By.CssSelector("#import>a")).Click();
driver.FindElement(By.XPath("//*[@class='menu_bg']/ul/li[3]/a")).Click();
driver.FindElement(By.CssSelector("ul[@class='menu_bg']>li[value='3']")).Click();
请帮帮我。设计页面如下所示:
<body>
<div class="header_bg"></div>
<div class="menu_bg">
<ul class="menu">
<li id="retrieve"></li>
<li id="scan" class="test"></li>
<li id="import">
<a target="main" href="import/import.aspx" onclick="clickme(this,'import')">Import</a>
</li>
<li id="admin"></li>
<li id="help"></li>
<li style="float: right;"></li>
</ul>
</div>
</body>
我一直收到如下错误:
unable to find the element
XPath 索引器是从 1 开始的,而大多数其他语言是从 0 开始的。
这意味着您实际上的目标是2nd li
元素,其中没有anchor
元素。
So:
//*[@class='menu_bg']/ul/li[3]/a
然而,这个 XPath 查询不是很好,并且对位置太严格 - 因此,尽管上面这个新修复的 XPathshould工作,我建议你想想别的事情。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)